file = open('unicode.txt', 'wb')
for i in range(10):
file.write(str(unichr(i)))
我想要做的是所有的Unicode值打印到一個文本文件的Python:打印Unicode到文件
file = open('unicode.txt', 'wb')
for i in range(10):
file.write(str(unichr(i)))
我想要做的是所有的Unicode值打印到一個文本文件的Python:打印Unicode到文件
你不應該需要str()
待命unichr(i)
。 Python unicode
對象是可打印的。
此:
file = open('unicode.txt', 'wb')
for i in range(10):
file.write(unichr(i))
似乎爲我工作,它打印爲0x0000,爲0x0001,爲0x0002,等文本文件。
-1'str()'既不需要也不需要。 「Python unicode對象是可打印的」 - 有時,取決於哪些對象,什麼平臺,窄/寬unicode Python構建,默認編碼,可用字體,Python 2.x或3 .x,月相等等。在我的設置中,你的代碼會生成一個10字節的文件,其中包含''x00 x01 x02 x03 x04 x05 x06 x07 x08 t'...如果我= 128,我的結果是'UnicodeEncodeError:'ascii'編解碼器無法編碼字符u'\ x80'在位置0:序號不在範圍(128)' – 2010-06-23 22:41:35
somefile = codecs.open('unicode.txt', 'wb', someencoding)
for i in range(10):
somefile.write(unichr(i))
這裏有什麼問題? – Wilduck 2010-06-23 19:48:40
你忘了'wb'上的'b'嗎?這是個問題嗎?如果是這樣,請修改爲(1)正確格式化代碼,(2)實際詢問實際問題,以便我們知道您實際上遇到了什麼問題。 – 2010-06-23 20:03:59
「Unicode值」?你的意思是「字符」還是「字節」?一個unicode字符需要一個或多個字節,具體取決於編碼。你想用這個文件做什麼? – 2010-06-23 20:39:01