python中sys.argv的說明(讀《python簡明教程》的困惑解答)
在閱讀《python簡明教程》的時候,第8章、14章有對sys模塊的使用,其中關於sys.argv的說明有一點困惑,讓自己思索了好久,後來才恍然大悟,在這裏分享一下我所理解到的,以便於和我有一樣困惑的python學習者能夠更好的理解。
以下代碼來自於《python簡明教程》8.1:
例8.1 使用sys模塊
#!/usr/bin/python
# Filename: using_sys.py
import sys
print ‘The command line arguments are:‘ for i in sys.argv:
print i
print ‘\n\nThe PYTHONPATH is‘, sys.path, ‘\n‘
(源文件:code/using_sys.py)
輸出
$ python using_sys.py we are arguments
The command line arguments are:
using_sys.py
we
are
arguments
The PYTHONPATH is [‘/home/swaroop/byte/code‘, ‘/usr/lib/python23.zip‘, ‘/usr/lib/python2.3‘, ‘/usr/lib/python2.3/plat-linux2‘, ‘/usr/lib/python2.3/lib-tk‘, ‘/usr/lib/python2.3/lib-dynload‘, ‘/usr/lib/python2.3/site-packages‘, ‘/usr/lib/python2.3/site-packages/gtk-2.0‘]
結合書籍閱讀,此模塊的講解我就不做過多敘述,該書籍講解已經十分詳細簡單,水平有限,難以超越。說說sys.argv,首先它是一個元組;其次這個元組的第一個元素必定是程序名本身,比如這裏的程序名是“using_sys.py”,那麽sys.argv[0]的輸出是“using_sys.py”;然後sys.argv[1:]的元素是用戶輸入的內容,並且以空格隔開,例句輸出用紅色標記的內容其實是用戶鍵入的內容,for in循環輸出了sys.argv[0:4],分別對應的是“using_sys.py”、“we”、“are”、“arguments”。
總結:sys.argv是以自身程序名為首元素,用戶鍵入內容為後續元素的元組,並且後續元素用空格表示該元素輸入完成,繼續輸入下一個元素內容,按下回車即元組輸入結束。
python中sys.argv的說明(讀《python簡明教程》的困惑解答)