通常 Python 的解釋器被安裝在可用的目標(biāo)機(jī)器 /usr/local/bin/python3.4
目錄下;把 /usr/local/bin
目錄放進(jìn)你的 Unix Shell 的搜索路徑里,通過輸入命令來運(yùn)行它。
python3.4
對 shell[1] 來說,由于安裝路徑是可以選擇的,所以也有可能安裝在其它位置,你可以與當(dāng)?shù)氐?Python 專家或者系統(tǒng)管理員聯(lián)系。(例如,/usr/local/python
就是一個(gè)受歡迎的替代位置。)
在 Windows 機(jī)器上,Python 通常安裝在 C:\Python34,但當(dāng)我們運(yùn)行安裝程序的時(shí)候可以改變它。為了把這個(gè)目錄加入到環(huán)境變量中,你需要在 DOS 窗口中鍵入如下命令行:
set path=%path%;C:\python34
輸入一個(gè)文件結(jié)束符(Unix 上是 Ctrl+D,Windows 上是 Ctrl+Z)解釋器會(huì)以 0 值退出。如果這樣沒有起作用,你可以輸入以下命令來退出:quit()
。
解釋器的命令行編輯功能通常并不復(fù)雜。 裝在 Unix 上的解釋器可能會(huì)有 GNU readline 庫的支持, 這樣就能夠得到更加精巧的交互編輯和歷史記錄特性。檢查命令行編輯特性是否支持的最快方式是在 Python 解釋器的第一個(gè)提示符后輸入 Ctrl-P
。如果有嘟嘟聲,說明你可以使用命令后編輯功能,參閱附錄交互式輸入行編輯和歷史回溯獲得更多關(guān)于此的信息。如果任何事情也沒有發(fā)生或者只是出現(xiàn)一個(gè) ^p
字符,說明命令行編輯功能不可用,你只有用退格鍵來刪除輸入的命令。
解釋器工作起來和 Unix 的 Shell 類似:使用終端設(shè)備作為標(biāo)準(zhǔn)輸入來調(diào)用她時(shí),解釋器交互的解讀和執(zhí)行命令,通過文件名參數(shù)或以文件作為標(biāo)準(zhǔn)輸入設(shè)備時(shí),它從文件中解讀并執(zhí)行腳本。
啟動(dòng)解釋器的第二個(gè)方法是
python -c command [arg]....
這種方法可以在命令行中直接執(zhí)行語句,等同于 shell 的 -c 選項(xiàng)。因?yàn)?Python 語句通常會(huì)包括空格之類的特殊字符,所以最好把整個(gè)命令用單引號包括起來。
有些 Python 模塊也可以當(dāng)做腳本使用,它們可以用
python-m module[arg]...
的方式調(diào)用,這樣就會(huì)像你在命令行中給出其完整名字一樣運(yùn)行模塊源文件。
使用腳本文件時(shí),經(jīng)常會(huì)運(yùn)行腳本然后進(jìn)入交互模式。這也可以通過在腳本之前加上-i參數(shù)來實(shí)現(xiàn)。
調(diào)用解釋器時(shí),腳本名和附加參數(shù)將變成一個(gè)字符串列表,并賦值到sys
模塊的argv
變量中。你可以通過執(zhí)行 import sys
來訪問此列表。列表的長度至少為 1;當(dāng)沒有腳本并沒有給出參數(shù)時(shí),sys.[ 0 ]
是一個(gè)空字符串。當(dāng)腳本名為 “-”(意思是標(biāo)準(zhǔn)輸入),則sys.argv [ 0 ]
設(shè)置為“-” 。當(dāng)使用-c
命令時(shí),sys.argv [ 0 ]
被設(shè)置為“-C”。當(dāng) -m 模塊時(shí),sys.argv [ 0 ]
被設(shè)置為完整的模塊地址名稱。-C
命令或-m
模塊之后發(fā)現(xiàn)選項(xiàng)不會(huì)被 Python 解釋器的選項(xiàng)處理消耗,而是由留在sys.argv
中的命令或模塊來處理。
從 tty 讀取命令時(shí),我們稱解釋器工作于交互模式。這種模式下它根據(jù)主提示符來執(zhí)行,主提示符通常標(biāo)識為三個(gè)大于括號(>>>
);繼續(xù)的部分被稱為從屬提示符,由三個(gè)點(diǎn)標(biāo)識(...
)。在第一行前,解釋器打印歡迎信息、版本號和授權(quán)提示。
$ python3.4
Python 3.4 (default Mar 16 2014,09:25:04)
[GCC 4.8.2] on linux
Type”help”,”copyrigt”,”credits”or”license”for more information.
>>>
輸入多行結(jié)構(gòu)是需要從屬提示符,例如,下面舉的這個(gè)if語句。
>>> the_word_is_flat=True
>>> if the_word_is_flat:
... Print(“Be careful not to fall off !”)
...
Be careful no to fall off !
默認(rèn)情況下,Python 源文件時(shí)用 UTF-8 來編碼的。在此編碼下,世界上的大多數(shù)語言的字符可以同時(shí)使用字符串、標(biāo)識符和注釋中,盡管 Python 標(biāo)準(zhǔn)庫僅使用 ASCLL 字符作為標(biāo)識符,這只是任何可移植代碼應(yīng)該遵守的約定。如果要正確顯示所有的字符,你的編輯器必須能夠識別出文件時(shí) UTF-8 編碼,并且她使用的字體能支持文件中所有的字符。
你也可以為源文件指定不同的字符編碼。為了這樣做,在#!
行(首行)后插入至少一行特殊的注釋行來定義源文件的編碼。
#—*—coding: encoding —*—
通過此聲明,源文件中所有的東西都會(huì)被當(dāng)做用 encoding 指代的 UTF-8 編碼對待。在 Python 庫參考手冊 codecs 一節(jié)中你可以找到一張可以用的編程列表。
例如,如果你的編輯器不支持 UTF-8 編碼的文件,但支持像 windows-1252 的其他一些編碼,你可以定義:
#—*— coding: cp-1252 —*—
這樣就可以在源文件中使用 Windows-1252 字符集中的所有字符了。這個(gè)上的編碼注釋必須在文件中的第一或者第二行進(jìn)行定義。
腳注
[1] 在 Unix 系統(tǒng)中,為了不使與它同時(shí)安裝的 Python 2x 出現(xiàn)執(zhí)行沖突,Python 解釋器 3.x 不安裝,默認(rèn)執(zhí)行 python。