2017-04-22 12 views
1

私はutf-8でポリッシュ文字でエンコードされたファイルを持っています。 私がしなければならないことは、言葉で少し演奏することです。ポーランドのエンコーディング - 分割の問題

Pacjent lat 48 został przyjęty do Oddziału z powodu spadku tolerancji wysiłku i duszności. 
['\xef\xbb\xbfPacjent', 'lat', '48', 'zosta\xc5\x82', 'przyj\xc4\x99ty', 'do', 'Oddzia\xc5\x82u', 'z', 'powodu', 'spadku', 'tolerancji', 'wysi\xc5\x82ku', 'i', 'duszno\xc5\x9bci.'] 
[u'Pacjent', u'lat', u'48', u'zosta\u0142', u'przyj\u0119ty', u'do', u'Oddzia\u0142u', u'z', u'powodu', u'spadku', u'tolerancji', u'wysi\u0142ku', u'i', u'duszno\u015bci.'] 

私は、リスト内のポーランドの文字を持って何をする必要があります:私はスプリットを使用する場合でも、(」「)のリストは、X82または\ u0142 \ XC5 \

filename = 'patient.txt' 
f = open(filename, 'r') 
for line in f: 
    print line 
    print line.split(" ") 
    print unicode(line,encoding(line),errors='ignore').split(" ") 
f.close() 

結果が含まれていますか?それはまったく可能ですか?

よろしく
パヴェル

+0

utf8:hex 'C582'; Unicode: '\ u0142' –

答えて

2

すでにポーランド文字がリストにあります。しかし、あなたがそのリストを印刷するときには、その表現しか見ることができません。

>>> print u'zosta\u0142' 
został 
0

あなたのファイルは実際にはUTF-8が、UTF-8-BOMではありません。使用open(filename, 'r', encoding='utf-8-bom')