做ftp專案中使用命令列引數及 ----python 命令列 解析模組 optparse

Python_bh發表於2020-10-25

Python: 使用 optparse 處理命令列引數

python optparse命令解析模組:https://www.cnblogs.com/pping/p/3989098.html
python optparse模組的簡單用法:https://www.cnblogs.com/darkpig/p/5677153.html
Parser for command line options:https://docs.python.org/3/library/optparse.html

參考來源 https://blog.csdn.net/freeking101/article/details/52470744

使用 optparse 處理 命令列引數

 

Python 有兩個內建的模組用於處理命令列引數:

  1. 一個是 getopt 只能簡單處理 命令列引數;
  2. 另一個是 optparse,功能強大且易於使用,可以方便的生成標準的、符合 Unix/Posix 規範的命令列說明。

簡單示例

下面是一個使用 optparse 的簡單示例:

import optparse  # 使用 optparse 處理命令列引數


class FtpClient(object):
    """ftp客戶端"""
    MSG_SIZE = 1024  # 訊息最長1024

    def __init__(self):
        self.username = None
        parser = optparse.OptionParser()
        parser.add_option("-s","--server", dest="server", help="ftp server ip_addr")
        parser.add_option("-P","--port",type="int", dest="port", help="ftp server port")
        parser.add_option("-u","--username", dest="username", help="username info")
        parser.add_option("-p","--password", dest="password", help="password info")
        self.options , self.args = parser.parse_args()

        print(self.options,self.args,type(self.options),self.options.server)
client = FtpClient()

上面這些命令是相同效果的。除此之外, optparse 還為我們自動生成命令列的幫助資訊:

  1. <yourscript> -h

  2. <yourscript> --help

 執行效果截圖:

 

相關文章