我正在尝试分析名称中包含中文字符的 CSV 文件中的数据(例如“粗体 1 25g”)。我正在使用 Tkinter 来选择这样的文件:
selectedFiles = askopenfilenames(filetypes=[("xlsx","*"),("xls","*")]) # Utilize Tkinker dialog window to choose files
selectedFiles = master.tk.splitlist(selectedFiles) # Create list from files chosen
我试图以这种方式将文件名转换为 unicode:
selectedFiles = [x.decode("utf-8") for x in selectedFiles]
只产生错误:
UnicodeDecodeError: 'ascii' codec can't decode byte 0xb4 in position 0: ordinal not in range(128)
我还尝试转换文件名,因为文件是使用以下内容创建的:
titles = [x.encode('utf-8') for x in titles]
只收到错误:
IOError: [Errno 22] invalid mode ('wb') or filename: 'C:\...\\data_division_files\\\xe7\xb2\x971 25g.csv'
我也尝试了上述方法的组合,但无济于事。我可以做些什么来允许在 Python 中读取这些文件?
(这个问题虽然相关,但无法解决我的问题:Obtain File size with os.path.getsize() in Python 2.7.5)