在 windows 上出现错误,但在 linux 上出现日文字符错误
Getting error on windows but not on linux with japanese characters
我想从目录中读取文件名并打印出它们的名字。
这是我的代码:
png_files = []
for root, dirs, files in os.walk('output'):
for file in files:
png_files.append(file)
for name in png_files:
print(name)
这只适用于 linux(不适用于 windows),我不知道为什么。我的文件有一些日文字符,我知道问题出在文件中,但不知道如何解决。
我收到这条消息:
'charmap' codec can't encode characters in position 19-27: character maps to <undefined>
我试过 encode('UTF-8')
然后我得到:
b'forecast_traffic\xe4\xb8'
我知道当你有 b''
时,这意味着它是一个字节串,所以我尝试了 name.encode('UTF-8').decode()
但我再次收到相同的错误消息,如果我尝试只编码我得到错误 :
'str' object has no attribute 'decode'
有谁知道如何解决这个问题以及我的错误在哪里?
"Windows console doesn't print Unicode" 错误已修复。检查下面的 link。 http://bugs.python.org/issue1602
而这个 https://wiki.python.org/moin/PrintFails
或使用 pip install win-unicode-console
安装 win_unicode_console
我想从目录中读取文件名并打印出它们的名字。 这是我的代码:
png_files = []
for root, dirs, files in os.walk('output'):
for file in files:
png_files.append(file)
for name in png_files:
print(name)
这只适用于 linux(不适用于 windows),我不知道为什么。我的文件有一些日文字符,我知道问题出在文件中,但不知道如何解决。
我收到这条消息:
'charmap' codec can't encode characters in position 19-27: character maps to <undefined>
我试过 encode('UTF-8')
然后我得到:
b'forecast_traffic\xe4\xb8'
我知道当你有 b''
时,这意味着它是一个字节串,所以我尝试了 name.encode('UTF-8').decode()
但我再次收到相同的错误消息,如果我尝试只编码我得到错误 :
'str' object has no attribute 'decode'
有谁知道如何解决这个问题以及我的错误在哪里?
"Windows console doesn't print Unicode" 错误已修复。检查下面的 link。 http://bugs.python.org/issue1602 而这个 https://wiki.python.org/moin/PrintFails
或使用 pip install win-unicode-console