欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python獲得命令行輸入的參數(shù)的兩種方式

 更新時間:2020年11月02日 08:31:09   作者:小小程序員ol  
這篇文章主要介紹了python獲得命令行輸入的參數(shù),本文通過兩種方法給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

外部直接執(zhí)行python文件時,我們有時需要獲得命令行的參數(shù)

獲得命令行參數(shù)的兩種方式

1、通過sys.argv

sys.argv:獲得一個參數(shù)列表,第一個值為文件名本身,通過sys.argv[1]獲得第文件名后的第一個參數(shù) ,多個參數(shù)使用空格隔開

測試代碼:

import sys
 
print(sys.argv)
print(len(sys.argv))
print(len(sys.argv[1]))

測試數(shù)據(jù):

python3 test.py 第一個參數(shù) 第二個參數(shù)

執(zhí)行結(jié)果:

['test.py', '第一個參數(shù)', '第二個參數(shù)']
3
5
[]
['第一個參數(shù)', '第二個參數(shù)']

2、通過getopt()獲得參數(shù)值

如果命令行需要通過linux那中指定參數(shù)名的方法運行,可以使用getopt()來獲得參數(shù)內(nèi)容

命令【getopt.getopt(參數(shù)列表,"短選項參數(shù)",[長選項參數(shù)])】
參數(shù)有兩種維度區(qū)分:短選項,長選項;帶參數(shù)值(開關(guān))和不帶參數(shù)值

短選項參數(shù)(命令行使用-參數(shù)名):由1個字母組成,如果字母后面跟冒號:表示這個參數(shù)需要有參數(shù)值,否則表示不輸入?yún)?shù)值
例如:io:
表示入?yún)⒁斎?code>-i -o=xxx

長選項參數(shù)(命令行使用--參數(shù)名):由[參數(shù)名=]表示,有值的參數(shù)一定要寫=,否則會拋錯
例如:["help","input=","output="]
表示入?yún)⒁斎?--help --input=xxx --output=xxx

測試代碼:

import getopt
import sys
 
opts,args=getopt.getopt(sys.argv[1:],"i:ho:",["help","input=","output="])
print(opts)
print(args)
 
for opts,arg in opts:
  print(opts)
  if opts=="-h" or opts=="--help":
    print("我只是一個說明文檔")
  elif opts=="-i" or opts=="--input":
    print("我只是輸入,輸入內(nèi)容如下:")
    print(arg)
  elif opts=="-o" or opts=="--output":
    print("我只是輸出,輸出內(nèi)容如下:")
    print(arg)

測試數(shù)據(jù):

python3 test.py -h -o=輸出 --input=輸入 最后一個參數(shù)

測試結(jié)果:

[('-h', ''), ('-o', '=輸出'), ('--input', '輸入')]
['最后一個參數(shù)']
-h
我只是一個說明文檔
-o
我只是輸出,輸出內(nèi)容如下:
=輸出
--input
我只是輸入,輸入內(nèi)容如下:
輸入

說明:使用getopt()需要注意一下,不能把未定義的參數(shù)放到短選項和長選項的前面,否則-h --help這種不能讀取到參數(shù)值(源碼中不是很嚴謹,遇到這種情況直接就break了),放到后面可以,也能通過args獲取到

getopt()中第一個參數(shù)寫sys.argv[1:]的緣故是命令行第一個參數(shù)為文件名本身,這里沒有意義

總結(jié)

到此這篇關(guān)于python獲得命令行輸入的參數(shù)的兩種方式的文章就介紹到這了,更多相關(guān)python命令行參數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python paramiko模塊的使用示例

    Python paramiko模塊的使用示例

    本篇文章主要介紹了Python paramiko模塊的使用示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-04-04
  • pyspark.sql.DataFrame與pandas.DataFrame之間的相互轉(zhuǎn)換實例

    pyspark.sql.DataFrame與pandas.DataFrame之間的相互轉(zhuǎn)換實例

    今天小編就為大家分享一篇pyspark.sql.DataFrame與pandas.DataFrame之間的相互轉(zhuǎn)換實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-08-08
  • Python實現(xiàn)輕松識別數(shù)百個快遞單號

    Python實現(xiàn)輕松識別數(shù)百個快遞單號

    當我們要寄出很多快遞時,為了及時反饋物流信息,需要盡快將快遞單號提取出來。這時用手動去識別真的太麻煩,所以本文將用Python實現(xiàn)輕松識別數(shù)百個快遞單號,需要的可以參考一下
    2022-06-06
  • python實現(xiàn)連續(xù)變量最優(yōu)分箱詳解--CART算法

    python實現(xiàn)連續(xù)變量最優(yōu)分箱詳解--CART算法

    今天小編就為大家分享一篇python實現(xiàn)連續(xù)變量最優(yōu)分箱詳解--CART算法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • Python的gevent框架的入門教程

    Python的gevent框架的入門教程

    這篇文章主要介紹了Python的gevent框架的入門教程,示例代碼基于Python2.x版本,需要的朋友可以參考下
    2015-04-04
  • 基于Pytorch實現(xiàn)邏輯回歸

    基于Pytorch實現(xiàn)邏輯回歸

    這篇文章主要為大家詳細介紹了基于Pytorch實現(xiàn)邏輯回歸,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-07-07
  • 詳解python學習筆記之解釋器

    詳解python學習筆記之解釋器

    這篇文章主要為大家詳細介紹了python學習筆記之解釋器,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-03-03
  • Python Flask前后端Ajax交互的方法示例

    Python Flask前后端Ajax交互的方法示例

    這篇文章主要介紹了Python Flask前后端Ajax交互的方法示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-07-07
  • Pyecharts V1和V0.5之間相互切換的方法

    Pyecharts V1和V0.5之間相互切換的方法

    這篇文章主要介紹了Pyecharts V1和V0.5之間相互切換的方法,Pyecharts這個可視化庫火爆,官方如是說:Echarts 是一個由百度開源的數(shù)據(jù)可視化,憑借著良好的交互性,精巧的圖表設(shè)計,得到了眾多開發(fā)者的認可,下面和小編一起進入文章了解具體內(nèi)容吧
    2022-02-02
  • python筆記(2)

    python筆記(2)

    python筆記,參考上一篇文章大家繼續(xù)
    2012-10-10

最新評論