我有一大堆的Unicode字符,不帶空格Python的 - Unicode文件IO
例如
Ⓜ
一個行的txt文件,我想輸出一個txt文件每行有一個字符
當我試圖做到這一點時,我想最終會分裂unicode charachters,我該怎麼做呢?
我有一大堆的Unicode字符,不帶空格Python的 - Unicode文件IO
例如
Ⓜ
一個行的txt文件,我想輸出一個txt文件每行有一個字符
當我試圖做到這一點時,我想最終會分裂unicode charachters,我該怎麼做呢?
這工作在Python 3.5
line = ""
with open("file.txt", "w", encoding="utf8") as f:
f.write("\n".join(line))
有與一堆的Unicode字符的文本文件沒有這樣的東西,它纔有意義談論一個「Unicode的對象」,一旦該文件已被閱讀並解碼成Python對象。這種或那種方式對文本文件中的數據進行編碼。
所以,問題是關於以正確的方式讀取文件,以便正確解碼字符到unicode對象。
import io
enc_source = enc_target = 'utf-8'
with io.open('my_file.txt', encoding=enc_source) as f:
the_line = f.read().strip()
with io.open('output.txt', mode='w', encoding=enc_target) as f:
f.writelines([c + '\n' for c in the_line])
上面我假設目標和源文件的編碼都是utf-8。這不一定是這種情況,你應該知道源文件是用什麼編碼的。你可以選擇enc_target
,但有人必須告訴你enc_source
(該文件本身不能告訴你)。
您可以包含迄今爲止嘗試過的代碼嗎? –