我想下面的代码打印选定的文件,但是我做错了。代码给了我这个错误:
TypeError: expected str, bytes or os.PathLike object, not _io.TextIOWrapper
def open_file():
global file
global wb
file = askopenfile(mode="a", filetypes=[("Excel Files", "*.xlsx *.xlsm *.sxc *.ods *.csv *.tsv")])
wb = openpyxl.load_workbook(filename=file.name)
filename = os.path.basename(file)
print(filename)
我做错了什么?
可能你的错误在这一行:
filename = os.path.basename(file)
应该是:
filename = os.path.basename(file.name)
错误说明您没有传递路径(字符串),字节或os.PathLike
对象。相反,您传递的是_io.TextIOWrapper
对象,因为file
是_io.TextIOWrapper
对象。