if __name__ == '__main__'
的意思是:當該文件被直接運行時,if __name__ == '__main__'
之下的代碼塊將被運行;當該文件以模塊形式被導入時,if __name__ == '__main__'
之下的代碼塊不被運行。
python xxx.py
,直接運行xxx.py文件
python -m xxx.py
,把xxx.py當做模塊運行
argparse有三個主要函數
1.parser = augparse.ArgumentParser() 使用argparse的第一步是創建ArgumentParser對象
2.parser.add_argument('-p', '--port', default=5000, type=int, help='port to listen on')
3.args=parser.parse_args() 通過調用parse_args()來解析ArgumentParser對象中保存的命令行參數:將命令行參數解析成相應的數據類型並采取相應的動作,它返回一個Namespace
對象。
-p 和 --port 兩個"- -"比一個“-”厲害 dest =port
大家都是相同數量的 - 的時候,誰前面算誰 -p 和 -prot dest=p.
dest 絕大部分的ArgumentParser動作為parse_args()方法返回的Namespace對象的屬性進行賦值,而屬性的名稱是由參數dest決定的。對於必選參數來說,dest默認等於必選參數的字面值。