簡體   English   中英

插入拼音的列使用Python中國字符的列

[英]Inserting a column of pinyin for a column of Chinese characters using Python

我目前正在使用http://lxyu.github.io/pinyin/ ,它工作正常。

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

試:

writer.writerow(pinyin.get(u'line'))

會給出錯誤的輸出:

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

任何幫助將不勝感激。

解決:它應該是pinyin.get(line [0])。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM