新聞中心
1. 命令行與環(huán)境
為獲取各種設置信息,Cpython 解析器會掃描命令行與環(huán)境。

我們提供的服務有:成都網(wǎng)站設計、做網(wǎng)站、成都外貿(mào)網(wǎng)站建設公司、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認證、絳縣ssl等。為成百上千家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務,是有科學管理、有技術的絳縣網(wǎng)站制作公司
CPython 實現(xiàn)細節(jié): 其他實現(xiàn)的命令行方案可能會有所不同。 詳見 其他實現(xiàn)。
1.1. 命令行
調(diào)用 Python 時,可以指定下列任意選項:
python [-bBdEhiIOqsSuvVWx?] [-c command | -m module-name | script | - ] [args]
最常見的用例是啟動時執(zhí)行腳本:
python myscript.py
1.1.1. 接口選項
解釋器接口類似于 UNIX shell,但提供了額外的調(diào)用方法:
用連接到 tty 設備的標準輸入調(diào)用時,會提示輸入并執(zhí)行命令,輸入 EOF (文件結束符,UNIX 中按 Ctrl-D,Windows 中按 Ctrl-Z, Enter)時終止。
用文件名參數(shù)或以標準輸入文件調(diào)用時,讀取,并執(zhí)行該腳本文件。
用目錄名參數(shù)調(diào)用時,從該目錄讀取、執(zhí)行適當名稱的腳本。
用
-c command調(diào)用時,執(zhí)行 command 表示的 Python 語句。command 可以包含用換行符分隔的多條語句。注意,前導空白字符在 Python 語句中非常重要!用
-m module-name調(diào)用時,在 Python 模塊路徑中查找指定的模塊,并將其作為腳本執(zhí)行。
非交互模式下,先解析全部輸入,再執(zhí)行。
接口選項會終結解釋器讀入的選項列表,所有后續(xù)參數(shù)都在 sys.argv 里 — 注意,首個元素,即下標為零的元素(sys.argv[0])是表示程序來源的字符串。
-c
執(zhí)行 command 中的 Python 代碼。command 可以是一條語句,也可以是用換行符分隔的多條語句,其中,前導空白字符與普通模塊代碼中的作用一樣。
使用此選項時,sys.argv 的首個元素為 "-c",并會把當前目錄加入至 sys.path 開頭(讓該目錄中的模塊作為頂層模塊導入)。
使用 command 參數(shù)會引發(fā) 審計事件 cpython.run_command 。
-m
在 sys.path 中搜索指定模塊,并以 __main__ 模塊執(zhí)行其內(nèi)容。
該參數(shù)是 模塊名,請勿輸入文件擴展名(.py)。模塊名應為有效的絕對 Python 模塊名,但本實現(xiàn)對此不作強制要求(例如,允許使用含連字符 - 的名稱)。
包名稱(包括命名空間包)也允許使用。使用包名稱而不是普通模塊名時,解釋器把 作為主模塊執(zhí)行。此行為特意被設計為與作為腳本參數(shù)傳遞給解釋器的目錄和 zip 文件的處理方式類似。
備注
此選項不適用于內(nèi)置模塊和以 C 編寫的擴展模塊,因為它們并沒有對應的 Python 模塊文件。 但是它仍然適用于預編譯的模塊,即使沒有可用的初始源文件。
如果給出此選項,sys.argv 的首個元素將為模塊文件的完整路徑 (在定位模塊文件期間,首個元素將設為 "-m")。 與 -c 選項一樣,當前目錄將被加入 sys.path 的開頭。
-I 選項可用來在隔離模式下運行腳本,此模式中 sys.path 既不包含當前目錄也不包含用戶的 site-packages 目錄。 所有 PYTHON* 環(huán)境變量也會被忽略。
許多標準庫模塊都包含在執(zhí)行時,以腳本方式調(diào)用的代碼。例如 timeit 模塊:
python -m timeit -s 'setup here' 'benchmarked code here'python -m timeit -h # for details
使用 module-name 參數(shù)會引發(fā) 審計事件 cpython.run_module 。
參見
runpy.run_module()
Python 代碼可以直接使用的等效功能
PEP 338 — 將模塊作為腳本執(zhí)行
在 3.1 版更改: 提供包名稱來運行 __main__ 子模塊。
在 3.4 版更改: 同樣支持命名空間包
-
從標準輸入 (sys.stdin) 讀取命令。標準輸入為終端時,使用 -i。
使用此選項時,sys.argv 的第一個元素是 "-", 同時,把當前目錄加入 sys.path 開頭。
沒有參數(shù)時,會觸發(fā) 審計事件 cpython.run_stdin 。


咨詢
建站咨詢