亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

Python命令行參數argv和argparse該如何使用

瀏覽:28日期:2022-06-28 08:54:30
概述

運行python腳本時通過命令行方式傳入運行參數通常有以下兩種自建方式:

sys.argv - 簡潔 argparse - 豐富,可自定義

下面詳細說一下具體時使用

argv

# test_argv.pyimport sysargs = sys.argvprint(f’args = {args}’)>>> output➜ git:(master) python3 test_argv.py args = [’test_argv.py’]➜ git:(master) ✗ python3 test_argv.py 1 2 3args = [’test_argv.py’, ’1’, ’2’, ’3’]➜ git:(master) ✗ python3 test_argv.py 1 2 3 ’hello world !’args = [’test_argv.py’, ’1’, ’2’, ’3’, ’hello world !’]

從上面可以看出,通過argv方法獲取的結果:

返回為list 第一個參數為腳本本身 如參數中間帶空格,用引號即可 argparse

argparse模塊的功能較為豐富,其核心是通過add_argument方法自定義入參的:標志、格式、類型和范圍等特性,常用如下:

*name_or_flag - 定義入參名或flag,如’-n’, ’--number’ type - 指定入參類型 choices - 指定入參范圍 default - 指定入參默認值 required - 指定該餐素是否不要,布爾類型 help - 參數概述

更多請參考: argparse

實例

test_argv.py

import argparse# 初始化一個parser對象parser = argparse.ArgumentParser(description=’test module of argparse’)# 指定-n/--number的參數# 類型為int# help為簡短地說明parser.add_argument( ’-n’, ’--number’, type=int, help=’args of number’)# 指定-o/--output參數# 并限制類型為:[’txt’, ’csv’, ’doc’]parser.add_argument( ’-o’, ’--output’, type=str, choices=[’txt’, ’csv’, ’doc’], help=’output method’)# 指定-d/--default參數# 并限制類型為:[’txt’, ’csv’, ’doc’]parser.add_argument( ’-d’, ’--default’, type=int, choices=[_ for _ in range(1, 10)], default=5, help=’default’)# 指定位置參數fooparser.add_argument(’foo’)args = parser.parse_args()print(f’args = {args}’)# 獲取指定參數print( f’number = {args.number}, type = {type(args.number)}n’ f’output = {args.output}, type = {type(args.output)}n’ f’default = {args.default}, type = {type(args.default)}n’ f’foo = {args.foo}, type = {type(args.foo)}’)

output

# -h - 打印help➜ git:(master) ✗ python3 test_argv.py -husage: test_argv.py [-h] [-n NUMBER] [-o {txt,csv,doc}] [-d {1,2,3,4,5,6,7,8,9}] footest module of argparsepositional arguments: foooptional arguments: -h, --help show this help message and exit -n NUMBER, --number NUMBER args of number -o {txt,csv,doc}, --output {txt,csv,doc} output method -d {1,2,3,4,5,6,7,8,9}, --default {1,2,3,4,5,6,7,8,9} default# 不帶參數運行,結果為None➜ git:(master) ✗ python3 test_argv.py args = Namespace(number=None, output=None)number = Noneoutput = None# 帶參數運行➜ git:(master) ✗ python3 test_argv.py -n 33 --output txtargs = Namespace(number=33, output=’txt’)number = 33, type = <class ’int’>output = txt, type = <class ’str’># 參數格式錯誤➜ git:(master) ✗ python3 test_argv.py -n str usage: test_argv.py [-h] [-n NUMBER] [-o {txt,csv,doc}]test_argv.py: error: argument -n/--number: invalid int value: ’str’➜ git:(master) ✗ python3 test_argv.py -o excel usage: test_argv.py [-h] [-n NUMBER] [-o {txt,csv,doc}]test_argv.py: error: argument -o/--output: invalid choice: ’excel’ (choose from ’txt’, ’csv’, ’doc’)# 默認參數 ➜ git:(master) ✗ python3 test_argv.py args = Namespace(default=5, number=None, output=None)number = None, type = <class ’NoneType’>output = None, type = <class ’NoneType’>output = 5, type = <class ’int’>

以上就是Python命令行參數argv和argparse該如何使用的詳細內容,更多關于Python命令行參數argv和argparse的資料請關注好吧啦網其它相關文章!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 特黄a三级三级三级 | 欧美视频免费在线播放 | 国产精品一区二区手机看片 | 一级片免费网站 | 一级做a爱过程免费视频日本 | 免费人成网站在线高清 | 国产网址| 无遮挡啪啪成人免费网站 | 黄色片免费看视频 | 亚洲午夜精品aaa级久久久久 | 草草影院ccyy国产日本欧美 | 香港三级做爰大爽视频 | 1000部未满岁18在线观看污 | 成人综合网站 | 国产欧美专区在线观看 | 麻豆国产高清在线播放 | 一区二三区国产 | 亚洲综合99| 免费大黄网站在线看 | 2019在线大片免费观看 | 日韩欧美在线观看视频 | 两性色午夜视频自由成熟的性 | 三级中文字幕永久在线视频 | 小明台湾成人永久免费看看 | 久久色视频 | 1024在线观看 | 一级女性黄 色生活片 | 欧美一级高清片在线 | 久久久久久久九九九九 | 人人狠狠综合88综合久久 | 欧美一区永久视频免费观看 | 精品成人一区二区三区免费视频 | 成人做爰免费看网站 | 亚洲黄网在线播放高清 | 在线观看免费播放网址成人 | 久久夏同学国产免费观看 | 青娱乐激情视频 | 伊人啪啪| 99国产在线播放 | 中文精品久久久久国产不卡 | 国产成人精品综合在线观看 |