3

Python 3.2を使用して、utf-8テキストを含むテキストファイルを処理していました。

import codecs
import csv
f = codecs.open('07362853300091_trade_turquoise_errNo_031.csv', 
                                         'r','utf-8', 'ignore')
text = csv.reader(f, delimiter=',', quotechar='"')
for row in text:
    for item in row:
        print(item)

うまくいきました。

Python 2.7インタープリターを使用してコードを実行する必要があり、次のように出力されます。

'\ xd7 \ x97 \ xd7 \ x99 \ xd7 \ x95 \ xd7 \ x91 \ xd7 \ x94 \ xd7 \ xa8 \ xd7 \ xa2 \ xd7 \ xa6 \ xd7 \ x99 \ xd7 \ x95 \ xd7 \ x9f'

私は試した

item.encode('utf-8')
print unicode(item, errors='ignore')

(そして、encode()関数とunicode()関数の他のいくつかの組み合わせも試しました)そしてそれは常に以下を出力します:

u'\ u05de \ u05e9 \ u05d9 \ u05db \ u05ea \ u05e9 \ u05d9 \ u05e7'

Python 2.7でUnicodeテキストをコンソールに印刷するにはどうすればよいですか?

4

1 に答える 1

2

ドキュメントを参照unicode_csv_reader()してください。

別の方法として、コンソールがutf-8を理解し、コンソールに出力する以外の項目に対してテキスト処理を行わない場合は、デコード/エンコードをスキップできます。

with open('07362853300091_trade_turquoise_errNo_031.csv', 'rb') as file:
     for row in csv.reader(file):
         print "\n".join(row)
于 2012-08-30T13:43:45.047 に答える