我有一个名为inputs.txt
的文本文件,它位于名为task1
的文件夹中。输入文件包含一系列我需要在Python函数中处理的字符串
我需要编写一个函数来打开这个intputs.txt
文件,并将字符串内容分配给a变量S
到目前为止,我已经:
def open_func(task1/test-input.txt): # syntax error thrown here with forward-slash
S = open(task1/test-input.txt, "r")
print(S)
return S
但这会在正斜杠处抛出语法错误
输入文件当前包含acbcbba,我希望将其传递给变量S
我做错了什么
编辑:
我已经附上了一个我尝试过的解决方案的屏幕截图,但仍然出现“no file or directory test input.txt”错误
干杯
您需要使用filename变量来传递给函数。为此,请声明一个变量,其值用引号封装,如下所示:
关于编辑:您打开的文件需要位于运行脚本的可访问路径中。因此,如果您的文件夹结构如下所示:
如果从“task1/”中调用脚本,则需要从此路径调用:
要获取工作目录,可以使用此代码段查找:
这里有多个问题:
定义中括号内的内容必须是参数,而不是字符串(因此将
task1/test-input.txt
替换为file
或filename
,因为task1/test-input.txt
是您试图打开的内容,而不是函数的参数)。或如果你想打开一个名为
task1/test-input.txt
的文件,你需要用引号把它括起来(简单或双引号,我个人更喜欢双引号),所以"task1/test-input.txt"
open
函数打开一个文件句柄,而不是文件内容。您需要在句柄上调用read()
,然后close()
它。比如:此外,您应该使用注释中指出的
with
语法,这将上述内容简化为(因为这会自动close
作为句柄):相关问题 更多 >
编程相关推荐