python獲取命令列引數的幾種方法總結
第一種是利用sys.argv模組
import sys print sys.argv 輸出整個命令列,以list的格式,所以有時候可以通過判斷這個list的長度來判斷是否有引數值輸入。 print sys.argv[0] print sys.argv[1] print sys.argv[2]上面這些都是後面的引數值了,在函式主體內可以獲取這些值或者判斷這些值來做出響應,比如寫一個help函式,如果判斷=='help',則可以輸出help資訊
上面的方法比較簡單,也很實用
第二種方法是利用OptionParser模組,這個功能比較強大。
我個人理解這個模組的相比較sys模組,就是對輸入引數有了一個細緻的操作處理,對於使用者要輸入的引數通過一個簡單的標示來進行分類各自處理,也可以在一條命令列中對於不同的引數都有一個不同的處理,sys肯定會有順序要求,因為他只能通過列表的順序來獲取引數
比如下面這個,我可以輸入i 或者p , 都會對應一個變數來得到它, filename = i後面的引數值,putname = p後面引數值,這樣在函式內部就可以呼叫了
下面這段程式碼是一個簡單的只有2個選項的程式碼,如有需要可以再加,但是簡單的結構有了,以後的程式碼可以直接用dest是你的函式裡所需要的變數名,當你的命令列裡有i,那麼就會來賦值你的filename=你輸入的在i後面的引數。
from optparse import OptionParser parse = OptionParser() parse.add_option('-i','--inputfile',dest='filename',help='please input your file') parse.add_option('-p','--putfile',dest='putname',help='please put your name') #(options,argvs) = parse.parse_args() options = parse.parse_args()[0] 這裡引數值對應的引數名儲存在這個options字典裡 print options
當輸入-h 時也可以直接打印出你裡面寫的幫助資訊,很好用,我們可以看到這裡的filename=sun, putname=jin,就按照我們的意願賦值成功了,腳本里就可以直接呼叫filename和putname來使用了
用options.filename和filename.putname字典的使用方法。
相關推薦
python獲取命令列引數的幾種方法總結
第一種是利用sys.argv模組 import sys print sys.argv 輸出整個命令列,以list的格式,所以有時候可以通過判斷這個list的長度來判斷是否有引數值輸入。 print sys.argv[0] print sys.argv[1] prin
在Windows環境下學習Linux命令列的幾種方法
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!  
Python獲取命令列引數
sys.argv[] 包含命令列引數的字串列表,通過下標獲取引數。 例如: #!/usr/bin/python # Filename: using_sys.py import sys print 'The command line arguments
python 獲取命令列引數
最近因工作需要使用Python寫個指令碼,用到了獲取命令列引數,這裡順便總結下做個筆記,下次用到過來瞅瞅就方便的多了 import sys import getopt def usage(): print ("sys.argv[0]: '-a aa -b bb -
python寫入csv檔案的幾種方法總結
最常用的一種方法,利用pandas包import pandas as pd #任意的多組列表 a = [1,2,3] b = [4,5,6] #字典中的key值即為csv中列名 dataframe = pd.DataFrame({'a_name':a,'b_nam
Python 獲得命令列引數的方法
如果想對python指令碼傳引數,python中對應的argc, argv(c語言的命令列引數)是什麼呢? 需要模組:sys 引數個數:len(sys.argv)指令碼名: sys.argv[0] 引數1: sys.argv[1] 引數2: sys.argv[2]test.py
spring mvc獲取絕對路徑的幾種方法
col 文件 結果 ret 項目 tps span ppr etc 1.首先如果是在一個controller方法中,則很簡單,直接用下面語句。 1 @RequestMapping("categoryHome") 2 public ModelAndVie
Javascript獲取html元素的幾種方法
nbsp code tel html元素 參數 ctype regex head html 1.通過id獲取html元素 <!DOCTYPE html> <html> <head lang="en"> <me
Python創建dict的幾種方法
range () OS style 元組 art 列表創建 pre clas 聲明:轉自CSDN (http://blog.csdn.net/csujiangyu/article/details/45176399) 1. 創建空字典 >>> dic =
python字典遍歷的幾種方法
pytho int itl 遍歷字典 value spa 分享 技術 字典 (1)遍歷key值 >>> a {‘a‘: ‘1‘, ‘b‘: ‘2‘, ‘c‘: ‘3‘} >>> for key in a: print(
C#獲取當前路徑的幾種方法
size start orm name uri path ant tom 當前 //1.獲取模塊的完整路徑。 string path1 = System.Diagnostics.Process.GetCurrentProcess().MainModule.FileNam
electron 獲取命令列引數
一 實現 最近要做一個小工具,基於electron的獨立程序,從平臺中雙擊圖示,能夠啟動electron,並且要攜帶一些必要的命令列引數。以為是個很簡單的實現,但發現electron的文件中並沒有說明。最後在atom的討論網站中找到了一個答案,如下: 1 假如你傳的引數為arg1 arg
Linux獲取網頁原始碼的幾種方法 linux爬蟲程式
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!  
python中取整數的幾種方法
1、向下取整: int() >>> a = 14.38 >>> int(a) 14 2、向上取整:ceil() 使用ceil()方法時需要匯入math模組,例如 >>> import math >>> m
Java 獲取當前日期的幾種方法
import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; public class getCurrDate { public st
python生成唯一Id的幾種方法
# coding:utf-8 import random def createRandomString(len): print ('wet'.center(10,'*')) raw =
Python解析命令列引數
使用Python編寫應用程式或是指令碼的時候,經常會用到命令列引數。C語言中有庫函式getopt解析短命令列引數,使用getopt_long解析短命令和長命令的組合。 Python使用getopt模組,同時解析短命令和長命令。看具體使用例子 #!/usr/bin/python import sys
python 列表去重的幾種方法
1 a = [1,1,1,2,3,3,4,5,6,6,6] a1 = [] for i in a: if i not a1: a1.append(i) else: continue 2 a = [1,1,1,1,2,3,4,4,4,5] a
Dos和Linux檢視命令幫助的幾種方法
1) help [命令] 或者 [命令] /? 適用於內建命令 (DOS比如cd 或telnet) 2) [命令] --help 適用於一般命令 非內建命令 (DOS比如 tel
Python獲取物件屬性的4種方法
本文將簡單介紹四種獲取物件的方法。 假如有以下的類: class Person(object): def __init__(self, name, age): self.na