如何在python中将变量传递到argparse
我有一个python脚本func.py,它包含argparse并获取一个文件如何在python中将变量传递到argparse,python,argparse,Python,Argparse,我有一个python脚本func.py,它包含argparse并获取一个文件 parser = argparse.ArgumentParser(description='test') parser.add_argument('-i', dest='ifile', metavar="FILE", help='input file') args = parser.parse_args() 这个ifile基本上只是目录中该文件的名称 filename = 'PATH TO FILE' + args.
parser = argparse.ArgumentParser(description='test')
parser.add_argument('-i', dest='ifile', metavar="FILE", help='input file')
args = parser.parse_args()
这个ifile基本上只是目录中该文件的名称
filename = 'PATH TO FILE' + args.ifile
如果我有一个包含文件名的变量,如何将该变量传递给argparse,以便它获取该变量的字符串值?
大概是这样的:
new_file = 'text_file.txt'
func.py -i new_file
filename = 'PATH TO FILE' + 'text_file.txt'
我现在得到的是:
new_file = "text_file.txt'
python func.py -I new_file
filename = 'PATH TO FILE' + 'new_file'
然后很明显会出现一条错误消息,说明它找不到该文件。您只需执行以下操作即可:
$ new_file="text_file.txt"
$ ./func.py -I $new_file
然后,Python
中的args变量应该包含ifile='text\u file.txt'
:
text_file.txt
你能举一个更详细的例子吗?我甚至不知道这些行是从哪里来的,您希望命令行参数引用变量名的原因是什么?我怀疑您在解决您试图解决的任何问题时走错了方向。@user10605163我需要在jupyter笔记本(!func.py-I new_file)中运行func.py。不幸的是,我没有其他方法可以运行此脚本。请将jupyter添加到问题中。通常这在python中不是问题。