导语:
本文主要介绍了关于python中getopt模块是什么的相关知识,包括python的模块是什么,以及python glob这些编程知识,希望对大家有参考作用。
1、Getopt模块是专门处理命令行参数的模块,用于获取命令行选项和参数。命令行选项使程序参数更加灵活,同时支持短选项模式 (-) 和长选项模式 (-)。
2. 该模块提供了两种方法和一个异常处理程序来分析命令行参数。
实例
import sys
import getopt
def main(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="])
for opt, arg in opts:
if opt in ("-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()
elif opt in ("-i", "--input_file"):
input_file = arg
elif opt in ("-o", "--output_file"):
output_file = arg
print('输入文件为:', input_file)
print('输出文件为:', output_file)
# 打印不含'-'或'--'的参数
for i in range(0, len(args)):
print('不含'-'或'--'的参数 %s 为:%s' % (i + 1, args[i]))
if __name__ == "__main__":
main(sys.argv)
本文为原创文章,版权归知行编程网所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ 如何在python交互模式下输出汉字12/01
- ♥ python中的str()不能直接用吗?12/28
- ♥ python编程看什么教材好12/28
- ♥ 为什么python不适合web开发08/20
- ♥ python导入dlib报错解决办法10/17
- ♥ 如何调试python脚本12/03
内容反馈