当前位置: 首页 > 图灵资讯 > 行业资讯> python中getopt模块是什么

python中getopt模块是什么

来源:图灵python
时间: 2024-06-06 14:50:06

1、Getopt模块是一个专门处理命令行参数的模块,用于获取命令行选项和参数。命令行选项使程序参数更加灵活,支持短选项模式(-)和长选项模式(-)。

2、该模块提供了分析命令行参数的两种方法和一种异常处理方法。

实例

importsys
importgetopt


defmain(argv):
input_file=""
output_file=""
#"hi:o:":短格式分析串,h后面没有冒号,说明后面没有参数;i和o后面有冒号,表示后面有参数
#["help","input_file=","output_file="]:长格式分析串列表,help后面没有等号,表示后面没有参数;input_file和output_file后面有冒号,表示后面有参数
#返回值包括`opts`和`args`,opts是以元组为元素的列表,每个元组的形式为:(选项,附加参数),如:('-i','test.png');
#args是列表,元素是不含'的元素;-'或'--'的参数
opts,args=getopt.getopt(argv[1:],"hi:o:",["help","input_file=","output_file="])

foropt,arginopts:
ifoptin("-h","--help"):
print('script_2.py-i<input_file>-o<output_file>')
print('or:test_arg.py--input_file=<input_file>--output_file=<output_file>')
sys.exit()
elifoptin("-i","--input_file"):
input_file=arg
elifoptin("-o","--output_file"):
output_file=arg
print('输入文件为',input_file)
print('输出文件为',output_file)

#不包括'打印;-'或'--'的参数
foriinrange(0,len(args)):
print('不含'-'或'--'参数%s为:%s'%(i+1,args[i]))

if__name__=="__main__":
main(sys.argv)

以上是python中getopt模块的介绍,希望对大家有所帮助。更多Python学习指导:python基础教程