使用Python为一列汉字插入一列拼音

使用Python为一列汉字插入一列拼音,python,python-2.7,csv,Python,Python 2.7,Csv,我目前正在使用,效果很好 import pinyin print pinyin.get(u'你好') 我得到了正确的“nihao” 使用以下格式的CSV文件: 陈升 "Mon Mon" 草蜢 李宇春 ... 但是,当我尝试这样做时: with open('ChineseNames.csv','rb') as fin, open('output.csv','wb') as fout: reader = csv.reader(fin, delimiter=' ', quotechar=

我目前正在使用,效果很好

import pinyin

print pinyin.get(u'你好')
我得到了正确的“nihao”

使用以下格式的CSV文件:

陈升
"Mon Mon"
草蜢
李宇春
...
但是,当我尝试这样做时:

with open('ChineseNames.csv','rb') as fin, open('output.csv','wb') as fout:
    reader = csv.reader(fin, delimiter=' ', quotechar='|')
    writer = csv.writer(fout)
    for line in reader:
        writer.writerow(pinyin.get(line))
我得到:

Traceback (most recent call last):
  File "singerpinyin.py", line 12, in <module>
    writer.writerow(pinyin.get(line))
  File "/usr/local/lib/python2.7/dist-packages/pinyin/pinyin.py", line 30, in get
    s = compat.u(s)
  File "/usr/local/lib/python2.7/dist-packages/pinyin/compat.py", line 12, in u
    return unicode(s, "utf-8")
TypeError: coercing to Unicode: need string or buffer, list found
将给出错误的输出:

l,i,n,e
l,i,n,e
l,i,n,e
...
任何帮助都将不胜感激。

解决: 它应该是拼音。get(第[0]行)

l,i,n,e
l,i,n,e
l,i,n,e
...