def readfile(file):
edges = [] # to contain tuples of all edges
with open(file) as f:
for line in f:
我试图传入一个名为file的文本文件,然后阅读它,但它不起作用。即使我将文件转换为字符串,它也不起作用。 Python说
with open(file) as f: IOError: [Errno 22] invalid mode ('r') or
filename: "<type 'file'>"
如何打开文件,作为变量传递给open?
答案 0 :(得分:1)
首先,由于file
是python中的一个类型,你不应该将它用作变量名或文件名,其次你需要将文件名放在 quote 在open
函数内部并注意open
函数使用read mod作为默认值! :
with open('file_name.txt','r') as f:
for line in f:
答案 1 :(得分:1)
file
重命名为filename
,因为file
是python的内置名称:
def readfile(filename):
edges = [] # to contain tuples of all edges
with open(filename) as f:
for line in f:
open()
使用&#39; r&#39;作为默认模式。