主页 > 知识库 > python 命令行传参方法总结

python 命令行传参方法总结

热门标签:Win7旗舰版 电话运营中心 客户服务 百度AI接口 硅谷的囚徒呼叫中心 呼叫中心市场需求 语音系统 企业做大做强

argparse1

import argparse
import sys
FLAGS = None
def main():
  print(FLAGS.data_dir)
if __name__ == '__main__':
  parser = argparse.ArgumentParser()
  parser.add_argument('--data_dir', type=str,
                      default='input_data',
                      help='Directory for storing input data')
  FLAGS, unparsed = parser.parse_known_args()
  main()
  #tf.app.run(main=main, argv=[sys.argv[0]] + unparsed)

argparse2

def main(args):
   print(args.input_dir)
def parse_arguments(argv):
    parser = argparse.ArgumentParser()
    parser.add_argument('-I', '--input_dir', type=str, help='Directory with unaligned images.')
   
    return parser.parse_args(argv)
if __name__ == '__main__':
    main(parse_arguments(sys.argv[1:]))

gflags

import sys
import os
import gflags
Flags = gflags.FLAGS
gflags.DEFINE_string('src_path', 'test', 'path pattern')
def main():
  print(Flags.src_path)
if __name__ == "__main__":
    Flags(sys.argv)
    main()

补充:python3 命令行传入参数(cmd -parameter)

1. 新建

cmd_parameter.py

2. 复制如下测试代码到

cmd_parameter.py
import argparse
parser = argparse.ArgumentParser(description='manual to this script')
parser.add_argument('--string', type=str, default=None)
parser.add_argument('--int-input', type=int, default=32)
parser.add_argument('--list-input', type=list, default=[1,2,3])
args = parser.parse_args()
if __name__ == '__main__':
    print(args.string)
    print(args.int_input)
    print(args.list_input)
    # 命令行输入这个
    # python cmd_parameter.py --string=python --int-input=10 --list-input=123

3. 命令行运行

python cmd_parameter.py --string=python --int-input=10 --list-input=123

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
  • Python画图工具Matplotlib库常用命令简述
  • Python编程编写完善的命令行工具
  • 超级好用的4个Python命令行可视化库
  • Python画图常用命令大全(详解)

标签:安康 崇左 山西 济南 喀什 长沙 山西 海南

巨人网络通讯声明:本文标题《python 命令行传参方法总结》,本文关键词  ;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 收缩
    • 微信客服
    • 微信二维码
    • 电话咨询

    • 400-1100-266