Python 从目录中读取文件
我试图读取目录中的文件。/resources/input\u file.utf8。 但是,当我使用命令从终端编译以下代码时:Python 从目录中读取文件,python,directory,Python,Directory,我试图读取目录中的文件。/resources/input\u file.utf8。 但是,当我使用命令从终端编译以下代码时: python namefile.py input 出现以下错误: [Errno 2] No such file or directory: 'input' 这是我的代码: from argparse import ArgumentParser def parse_args(): parser = ArgumentParser() parser.a
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()函数中
如何修复它?如果您正在运行命令
python namefile.py input
,请确保:
1) 文件-您的输入文件和python脚本都在同一个文件夹中
2) 位置-终端中的工作目录是包含文件的目录(使用pwd进行检查)
3) 文件名-您的文件名正好是input
,而不是input.txt
或input.utf8
如果文件位于示例中提供的路径中,则需要使用该路径调用脚本 示例:
python namefile.py./resources/input\u file.utf8”
您是否尝试过python namefile.py resources/input\u file.utf8
?路径将相对于您的终端所在的目录。请确保从那里提供有效路径。听起来您的数据库中没有文件“输入”directory@DroidX86它起作用了!这是吃午餐的唯一方法吗?我的意思是我总是在编译文件之前指定目录?ArgumentParser中的帮助尚未指定目录?Thanks@Pierfrancesco你必须告诉程序在哪里找到你试图使用的文件。可以使用相对路径或绝对路径执行此操作。绝对路径从根开始/
。相对路径从当前目录或已知位置开始(如~
-您的主目录)