我正在尝试读取目录./resources/input_file.utf8中的文件。 但是,当我使用以下命令从终端编译以下代码时:
python namefile.py input
出现此错误:
[Errno 2] No such file or directory: 'input'
这是我的代码:
from argparse import ArgumentParser
def parse_args():
parser = ArgumentParser()
parser.add_argument("input_path", help="./resources/input_file.utf8")
return parser.parse_args()
def foo(input_path):
file_input = open(input_path, "r", encoding='utf-8-sig')
for line in file_input:
[...]
if __name__ == '__main__':
args = parse_args()
predict(args.input_path)
我必须遵守的规范之一是不要将硬路径直接放在foo函数中,而只能放在parser.add_argument()函数中。
我该如何解决?
答案 0 :(得分:1)
如果您正在运行命令python namefile.py input
,请确保:
1)文件-您将输入文件和python脚本都放在同一个文件夹中。
2)位置-终端中的工作目录就是包含文件的目录(使用 pwd 检查)。
3)文件名-您的文件名完全是input
,不是 input.txt
或input.utf8
。
如果文件位于示例中提供的路径中,则需要使用该路径调用脚本。
示例:
python namefile.py "./resources/input_file.utf8"