python去掉列表的括号和逗号_Python – 从元组CSV文件中删除大括号和逗号

我正在打印到这样的csv文件:

bdictionary = ## bdictionary is a big list of tuples

w = csv.writer(open("testnucsv.csv", "w"))

for sent in bdictionary:

w.writerow(sent)

它的打印效果非常好,看起来像这样:

(u’My’, u’D’) (u’dog’, u’N’)……………

(u’The’, u’D’) ……………………….

我怎么能像这样打印出来

My D dog N

The D

这是我尝试过的,但它无法正常工作.它分裂了每个charachter:

w = csv.writer(open("testnucsv.csv", "w"))

for sent in bdictionary:

sent = ''.join(str(v) for v in sent)

w.writerow(sent)

解决方法:

将它包装在一个列表中,writerow期望一个可迭代的,所以它迭代你的字符串将它分成单个字符:

sent = [' '.join(" ".join(v) for v in sent)]

你还需要加入元组中的字符串,而不是在元组上调用str,即:

t = [(u'My', u'D'), (u'dog', u'N')]

print(" ".join([" ".join(v) for v in t]))

My D dog N

您也可以使用file.write并将其传递给连接的字符串:

with open("testnucsv.csv", "w") as f:

for sent in bdictionary:

f.write(" ".join([" ".join(v) for v in sent])+"\n")

标签:python,csv

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值