国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁/技術(shù)文章
文章詳情頁

Python命令行參數(shù)argv和argparse該如何使用

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

運(yùn)行python腳本時(shí)通過命令行方式傳入運(yùn)行參數(shù)通常有以下兩種自建方式:

sys.argv - 簡(jiǎn)潔 argparse - 豐富,可自定義

下面詳細(xì)說一下具體時(shí)使用

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方法獲取的結(jié)果:

返回為list 第一個(gè)參數(shù)為腳本本身 如參數(shù)中間帶空格,用引號(hào)即可 argparse

argparse模塊的功能較為豐富,其核心是通過add_argument方法自定義入?yún)⒌模簶?biāo)志、格式、類型和范圍等特性,常用如下:

*name_or_flag - 定義入?yún)⒚騠lag,如’-n’, ’--number’ type - 指定入?yún)㈩愋? choices - 指定入?yún)⒎秶? default - 指定入?yún)⒛J(rèn)值 required - 指定該餐素是否不要,布爾類型 help - 參數(shù)概述

更多請(qǐng)參考: argparse

實(shí)例

test_argv.py

import argparse# 初始化一個(gè)parser對(duì)象parser = argparse.ArgumentParser(description=’test module of argparse’)# 指定-n/--number的參數(shù)# 類型為int# help為簡(jiǎn)短地說明parser.add_argument( ’-n’, ’--number’, type=int, help=’args of number’)# 指定-o/--output參數(shù)# 并限制類型為:[’txt’, ’csv’, ’doc’]parser.add_argument( ’-o’, ’--output’, type=str, choices=[’txt’, ’csv’, ’doc’], help=’output method’)# 指定-d/--default參數(shù)# 并限制類型為:[’txt’, ’csv’, ’doc’]parser.add_argument( ’-d’, ’--default’, type=int, choices=[_ for _ in range(1, 10)], default=5, help=’default’)# 指定位置參數(shù)fooparser.add_argument(’foo’)args = parser.parse_args()print(f’args = {args}’)# 獲取指定參數(shù)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# 不帶參數(shù)運(yùn)行,結(jié)果為None➜ git:(master) ✗ python3 test_argv.py args = Namespace(number=None, output=None)number = Noneoutput = None# 帶參數(shù)運(yùn)行➜ 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’># 參數(shù)格式錯(cuò)誤➜ 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’)# 默認(rèn)參數(shù) ➜ 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命令行參數(shù)argv和argparse該如何使用的詳細(xì)內(nèi)容,更多關(guān)于Python命令行參數(shù)argv和argparse的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 毛片欧美 | 男女猛烈无遮掩免费视频 | 天天看夜夜操 | 国内精品99 | 亚洲综合精品 | 玖玖啪| 成年人网站在线观看免费 | 尤蜜网站在线进入免费 | 国产特黄一级一片免费 | 看国产一级毛片 | 欧美日韩在线播一区二区三区 | 久久国产香蕉 | 欧美精品一区二区精品久久 | 日韩经典一区 | 久久老司机波多野结衣 | 男人天堂新地址 | 免费看黄色片的网站 | 国产欧美日韩在线观看精品 | 天天干亚洲 | 欧美毛片日韩一级在线 | 亚洲 午夜在线一区 | 亚洲三级理论 | 欧美国产日韩在线观看 | 久久黄色精品视频 | 尹人在线视频 | 偷柏自拍亚洲欧美综合在线图 | 免费国产a | 欧美日韩精品国产一区二区 | 国产欧美一区二区成人影院 | 国产三级a三级三级 | 美女张开腿让男人捅爽 | 免费欧洲毛片a级视频 | 碰碰碰免费公开在线视频 | 欧美视频在线看 | 国产精品成人网 | 香港三级88久久经典 | 日本一本久道 | 久久精品高清 | 久久观看 | 好吊色综合网天天高清 | 成人做爰全视频 |