电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

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

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

瀏覽:58日期: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 編程
相關文章:
主站蜘蛛池模板: 冲锋衣滑雪服厂家-冲锋衣定制工厂-滑雪服加工厂-广东睿牛户外(S-GERT) | 热回收盐水机组-反应釜冷水机组-高低温冷水机组-北京蓝海神骏科技有限公司 | 黑龙江「京科脑康」医院-哈尔滨失眠医院_哈尔滨治疗抑郁症医院_哈尔滨精神心理医院 | 钣金加工厂家-钣金加工-佛山钣金厂-月汇好 | 微型气泵-真空-蠕动-水泵-厂家-深圳市品亚科技有限公司 | 警方提醒:赣州约炮论坛真的安全吗?2025年新手必看的网络交友防坑指南 | 低粘度纤维素|混凝土灌浆料|有机硅憎水粉|聚羧酸减水剂-南京斯泰宝 | 硅胶制品-硅橡胶制品-东莞硅胶制品厂家-广东帝博科技有限公司 | Jaeaiot捷易科技-英伟达AI显卡模组/GPU整机服务器供应商 | 特材真空腔体_哈氏合金/镍基合金/纯镍腔体-无锡国德机械制造有限公司 | 山东PE给水管厂家,山东双壁波纹管,山东钢带增强波纹管,山东PE穿线管,山东PE农田灌溉管,山东MPP电力保护套管-山东德诺塑业有限公司 | 电子万能试验机_液压拉力试验机_冲击疲劳试验机_材料试验机厂家-济南众标仪器设备有限公司 | 青岛美佳乐清洁工程有限公司|青岛油烟管道清洗|酒店|企事业单位|学校工厂厨房|青岛油烟管道清洗 插针变压器-家用电器变压器-工业空调变压器-CD型电抗器-余姚市中驰电器有限公司 | 天助网 - 中小企业全网推广平台_生态整合营销知名服务商_天助网采购优选 | 安全阀_弹簧式安全阀_美标安全阀_工业冷冻安全阀厂家-中国·阿司米阀门有限公司 | 膏方加工_丸剂贴牌_膏滋代加工_湖北康瑞生物科技有限公司 | 齿辊分级破碎机,高低压压球机,立式双动力磨粉机-郑州长城冶金设备有限公司 | 胶原检测试剂盒,弹性蛋白检测试剂盒,类克ELISA试剂盒,阿达木单抗ELISA试剂盒-北京群晓科苑生物技术有限公司 | 盘装氧量分析仪-防爆壁挂氧化锆分析仪-安徽吉帆仪表有限公司 | 食品机械专用传感器-落料放大器-低价接近开关-菲德自控技术(天津)有限公司 | 淋巴细胞分离液_口腔医疗器材-精欣华医疗器械(无锡)有限公司 | 行吊_电动单梁起重机_双梁起重机_合肥起重机_厂家_合肥市神雕起重机械有限公司 | 卷筒电缆-拖链电缆-特种柔性扁平电缆定制厂家「上海缆胜」 | PO膜_灌浆膜及地膜供应厂家 - 青州市鲁谊塑料厂 | 专注提供国外机电设备及配件-工业控制领域一站式服务商-深圳市华联欧国际贸易有限公司 | 多功能三相相位伏安表-变压器短路阻抗测试仪-上海妙定电气 | 除甲醛公司-甲醛检测-广西雅居环境科技有限公司 | T恤衫定做,企业文化衫制作订做,广告T恤POLO衫定制厂家[源头工厂]-【汉诚T恤定制网】 | 最新电影-好看的电视剧大全-朝夕电影网| 哈尔滨京科脑康神经内科医院-哈尔滨治疗头痛医院-哈尔滨治疗癫痫康复医院 | 净化车间_洁净厂房_净化公司_净化厂房_无尘室工程_洁净工程装修|改造|施工-深圳净化公司 | 太空舱_民宿太空舱厂家_移动房屋太空舱价格-豪品建筑 | 洛阳网站建设_洛阳网站优化_网站建设平台_洛阳香河网络科技有限公司 | elisa试剂盒价格-酶联免疫试剂盒-猪elisa试剂盒-上海恒远生物科技有限公司 | 北京亦庄厂房出租_经开区产业园招商信息平台 | 铝单板_铝窗花_铝单板厂家_氟碳包柱铝单板批发价格-佛山科阳金属 | 别墅图纸超市|别墅设计图纸|农村房屋设计图|农村自建房|别墅设计图纸及效果图大全 | 小区健身器材_户外健身器材_室外健身器材_公园健身路径-沧州浩然体育器材有限公司 | 「安徽双凯」自动售货机-无人售货机-成人用品-自动饮料食品零食售货机 | 专业深孔加工_东莞深孔钻加工_东莞深孔钻_东莞深孔加工_模具深孔钻加工厂-东莞市超耀实业有限公司 | 经济师考试_2025中级经济师报名时间_报名入口_考试时间_华课网校经济师培训网站 |