首頁 > Python教程 > Python基礎教程 > Python 3 教程--使用 Python 解釋器

Python 3 教程--使用 Python 解釋器

時間:2019-09-01    來源:Python官網

2. 使用 Python 解釋器

2.1. 調用解釋器

在Python可用的機器上,Python解釋器通常放在 /usr/local/bin/python3.7 ; 把 /usr/local/bin 放到你 Unix shell 的搜索路徑當中 , 這樣就能鍵入命令:

 python3.7  

就能運行了 1 。安裝時可以選擇安裝目錄,所以解釋器也可能在別的地方;可以問問你身邊的 Python 大牛,或者你的系統管理員。(比如 /usr/local/python 也是比較常用的備選路徑)

在你的 Windows 機器上通過 Microsoft Store 安裝后,python3.7 命令將可使用。 如果你安裝了 py.exe 啟動器,你將可使用 py 命令。 參閱 附錄:設置環境變量 了解其他啟動 Python 的方式。

在主提示符中輸入文件結束字符(在 Unix 系統中是 Control-D,Windows 系統中是 Control-Z)就退出解釋器并返回退出狀態為0。如果這樣不管用,你還可以寫這個命令退出:quit()。

解釋器的行編輯功能也包括交互式編輯,在支持 readline 的系統中,可以回看歷史命令,也有 Tab 代碼補全功能。要想快速檢查是否支持行編輯,在出現提示符后,按鍵盤 Control-P。如果它“嗶”了一聲,它就是支持行編輯的;關于按鍵的詳細介紹請看附錄 交互式編輯和編輯歷史。如果什么都沒發生,或者顯示出 ^P,那么就不支持行編輯功能;你只能用退格(Backspace)鍵從當前行中刪除字符。

解釋器運行的時候有點像 Unix 命令行:在一個標準輸入 tty 設備上調用,它能交互式地讀取和執行命令;調用時提供文件名參數,或者有個文件重定向到標準輸入的話,它就會讀取和執行文件中的 腳本

另一種啟動解釋器的方式是 python -c command [arg] ...,其中 command 要換成想執行的指令,就像命令行的 -c 選項。由于 Python 代碼中經常會包含對終端來說比較特殊的字符,通常情況下都建議用英文單引號把 command 括起來。

有些 Python 模塊也可以作為腳本使用。可以這樣輸入:python -m module [arg] ...,這會執行 module 的源文件,就跟你在命令行把路徑寫全了一樣。

在運行腳本的時候,有時可能也會需要在運行后進入交互模式。這種時候在文件參數前,加上選項 -i 就可以了。

關于所有的命令行選項,請參考 命令行與環境

2.1.1. 傳入參數

如果可能的話,解釋器會讀取命令行參數,轉化為字符串列表存入 sys 模塊中的 argv 變量中。執行命令 importsys 你可以導入這個模塊并訪問這個列表。這個列表最少也會有一個元素;如果沒有給定輸入參數,sys.argv[0]就是個空字符串。如果腳本名是標準輸入,sys.argv[0] 就是 '-'。使用 -c command 時,sys.argv[0] 就會是 '-c'。如果使用選項 -m module,sys.argv[0] 就是包含目錄的模塊全名。在 -c command 或 -m module 之后的選項不會被解釋器處理,而會直接留在 sys.argv 中給命令或模塊來處理。

2.1.2. 交互模式

在終端(tty)輸入并執行指令時,我們說解釋器是運行在 交互模式(interactive mode)。在這種模式中,它會顯示 主提示符(primary prompt),提示輸入下一條指令,通常用三個大于號(>>>)表示;連續輸入行的時候,它會顯示 次要提示符,默認是三個點(...)。進入解釋器時,它會先顯示歡迎信息、版本信息、版權聲明,然后就會出現提示符:

$ python3.7
Python 3.7 (default, Sep 16 2015, 09:25:04)
[GCC 4.8.2] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>

多行指令需要在連續的多行中輸入。比如,以 if 為例:

>>> the_world_is_flat = True
>>> if the_world_is_flat:
...     print("Be careful not to fall off!")
...
Be careful not to fall off!

有關交互模式的更多內容,請參考 交互模式

2.2. 解釋器的運行環境

2.2.1. 源文件的字符編碼

默認情況下,Python 源碼文件以 UTF-8 編碼方式處理。在這種編碼方式中,世界上大多數語言的字符都可以同時用于字符串字面值、變量或函數名稱以及注釋中——盡管標準庫中只用常規的 ASCII 字符作為變量或函數名,而且任何可移植的代碼都應該遵守此約定。要正確顯示這些字符,你的編輯器必須能識別 UTF-8 編碼,而且必須使用能支持打開的文件中所有字符的字體。

如果不使用默認編碼,要聲明文件所使用的編碼,文件的 第一 行要寫成特殊的注釋。語法如下所示:

 # -*- coding: encoding -*-  

其中 encoding 可以是 Python 支持的任意一種 codecs

比如,要聲明使用 Windows-1252 編碼,你的源碼文件要寫成:

 # -*- coding: cp1252 -*-  

關于 第一行 規則的一種例外情況是,源碼以 UNIX "shebang" 行 開頭。這種情況下,編碼聲明就要寫在文件的第二行。例如:

#!/usr/bin/env python3
# -*- coding: cp1252 -*-

腳注

1

在Unix系統中,Python 3.x解釋器默認安裝后的執行文件并不叫作 python,這樣才不會與同時安裝的Python 2.x沖突。

相關推薦
調用Python 解釋器 什么是Python 解釋器?
Python3 簡介
Python 教程
Python 3 教程--課前甜點
Python入門簡介 Python能做什么?
Python入門教程之流程控制
Python入門教程之數據結構
Python入門教程之模塊
Python入門教程之輸入和輸出
Python入門教程之錯誤和異常處理
Python入門教程之類
Python入門教程之標準庫概覽
Python入門教程之標準庫瀏覽 – Part II
Python入門教程之虛擬環境和包
Python入門教程之浮點數算法:爭議和限制
Python 3 術語對照表

精彩推薦

熱門教程

上海天天彩选4第2018348期 手机qq麻将官方版 浙江6+1中奖规则图 快乐8app下载-android版 棋牌游戏电玩? 大乐透甘肃十一选五 在线股票实时行情 南宁麻将十三幺算法 广西快乐10分全包计划 广西今天快三开奖 西甲联赛排名 亲友湖南麻将官方下载 老快3怎么容易中奖 快乐12任五 北京快3直播开奖直播 腾讯分分彩官方开奖网址多少 秒速快3开奖官网