这是我的第一篇博文,请原谅我遗漏的信息或愚蠢的问题。因此,我尝试运行一个命令行python脚本(我在Windows机器中),将其传递2个参数,检查参数是否传递,如果没有,则显示特定于该参数的错误消息。我得到一个缺少参数的错误,但它没有显示我想要的消息(在函数中定义)。我不确定我是否没有正确地创建函数,或者是否遗漏了什么。我还想检查传递的参数是否为正确的字符串,而不是int,但这些参数似乎默认为字符串,因此检查它们是否为int也不起作用
有人能给我一个提示或给我指出正确的方向吗?我一直在网上搜索,但没有找到任何能回答这个问题的答案。我是python的新手,因此仍在学习如何正确阅读文档(似乎示例太少,我无法理解文档)。以下是我正在使用的代码:
import argparse
#parser to create and grab args from CLI
parser = argparse.ArgumentParser()
parser.add_argument("-i", help="File path of original folder")
parser.add_argument("-o", help="File path of output folder")
args = parser.parse_args()
#check if args have been passed and display error if missing
def check_args(input_path,output_path):
if input_path == None:
print("Please input a valid folder path for original folder destination")
elif output_path == None:
print("Please input a valid folder path for output folder destination")
else:
return args
#grab first and sec argument
input_path = args.i
output_path = args.o
check_args(input_path, output_path)
输出:
Program>python JPGtoPNG_conv.py -i 3 -o
usage: JPGtoPNG_conv.py [-h] [-i I] [-o O]
JPGtoPNG_conv.py: error: argument -o: expected one argument
非常感谢你的帮助
下面的代码应该可以为您完成这项工作
相关问题 更多 >
编程相关推荐