Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 为什么这个函数不能打开我的文件?_Python_File - Fatal编程技术网

Python 为什么这个函数不能打开我的文件?

Python 为什么这个函数不能打开我的文件?,python,file,Python,File,当我尝试调用该函数时,会得到以下结果: def open_file(filename): file_open= open(filename,"r") return file_open >打开_文件(random.txt) 回溯(最近一次呼叫最后一次): 文件“”,第1行,在 打开_文件(random.txt) NameError:未定义名称“random” 试试看 Python中的字符串需要被引用。 random被解释为对象,未定义 您忘记了引号: open_file('ran

当我尝试调用该函数时,会得到以下结果:

def open_file(filename):
    file_open= open(filename,"r")
    return file_open
>打开_文件(random.txt)
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
打开_文件(random.txt)
NameError:未定义名称“random”
试试看

Python中的字符串需要被引用。
random
被解释为对象,未定义

您忘记了引号:

open_file('random.txt')

python认为random是一个对象,显然您没有定义它。引号使其成为字符串。

您只需将文件名作为字符串输入;必须这样做:

open_file('random.txt')
请注意,您的函数工作正常,只需正确调用它


将参数作为字符串传递:
open_file('random.txt')
如果试图编写字符串文字(如文件名),则需要将其加引号;e、 g.
open_file('random.txt')
所以每次调用函数时,文件名都需要加引号?传递参数时出错。除此之外,函数还返回一个文件对象,而不是其内容it@JCSenkpiel当您想将某个内容按字面上的字符串形式传递时,可以引用它。如果要使用保存文件名的变量调用函数,则无需引用它
x=“random.txt”
然后您可以调用它
open\u file(x)
注意到没有引号吗?因为它是一个变量?
open_file('random.txt')
>>> open_file('random.txt')