python在运行命令时候需要从外部传入参数,例如:
python code.py --name=xiaoming
python code.py -n xiaoming
可以通过两种方式实现,想这种从外部传入方式笔者经过长期实践,总结一下两种方式传入参数,把代码复制到文件命名成code.py即可测试。
使用argparse
# 参数传入
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('--name', '-n', type=str, default='')
args = parser.parse_args()
name = args.name
print(name)
使用getopt
import sys
import getopt
if __name__ == "__main__":
"""
理命令行参数
python code.py --name=xiaoming
python code.py -n xiaoming
"""
options, args = getopt.getopt(sys.argv[1:], "hn:i:", ["help", "name=", "port="])
# 短格式 hn:i: 没有冒号不带参数,有冒号需要传入参数
# 长格式 help后面没有等号=,表示后面不带参数,其他三个有=,表示后面需要参数。
for op, value in options:
print(op, value)