我是python编程的新手,所以我不知道这个问题是多么基本。我想在python 3.5中处理古吉拉特文本文件。当我尝试执行这段代码时,它给了我一个错误。我该如何解决这个错误?
import tkinter.filedialog
import fileinput
import tkinter
filename1 = tkinter.filedialog.askopenfile()
my_file = open(filename1, "r", encoding= "utf-16")
content = my_file.read()
print(content)
错误:
Traceback (most recent call last):
File "D:\PhD\python workspace\guj.py", line 8, in <module>
my_file = open(filename1, "r", encoding= "utf-16")
TypeError: invalid file: <_io.TextIOWrapper name='D:/PhD/python workspace/text files/Gujarati.txt' mode='r' encoding='cp1252'>
答案 0 :(得分:1)
问题不在于语言。这应该没关系,因为计算机只将文件视为一组字符。
问题是askopenfile
返回目录的路径,而不是文件。然后代码尝试打开目录进行读取,这会给出您看到的invalid file
错误。
您应该使用的是askopenfilename
,它会要求用户选择文件,而不是目录。