跳轉到內容

Python 程式設計/互動模式

來自華夏公益教科書,開放的書籍,開放的世界


Python 有兩種基本模式:指令碼和互動式。正常模式是指令碼化和完成的 .py 檔案在 Python 直譯器中執行的模式。互動式模式是一個命令列 shell,它為每個語句提供即時反饋,同時在活動記憶體中執行之前輸入的語句。當新的行輸入直譯器時,輸入的程式將部分和整體地進行評估。

互動模式是嘗試語法變化的好方法。

在 macOS 或 linux 上,開啟終端,只需鍵入“python”。在 Windows 上,開啟命令提示符並鍵入“py”,或從工作列/應用程式選單中選擇“Python(命令列)”、“IDLE”或類似程式以啟動互動式 Python 會話。IDLE 是一個 GUI,它包含互動模式以及編輯和執行檔案的選項。

Python 應該列印類似這樣的東西

$ python
Python 3.0b3 (r30b3:66303, Sep  8 2008, 14:01:02) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>

(如果 Python 無法執行,請確保它已安裝並且您的路徑設定正確。請參閱 獲取 Python。)

The>>>是 Python 的方式,告訴你你正在互動模式。在互動模式下,你鍵入的內容會立即執行。嘗試鍵入1+1in. Python 將響應2. 互動模式允許你測試並檢視 Python 將做什麼。如果你需要使用新的 Python 語句,進入互動模式並嘗試一下。

一個互動式會話示例

>>> 5
5
>>> print(5*7)
35
>>> "hello" * 2
'hellohello'
>>> "hello".__class__
<type 'str'>

但是,你需要在互動式環境中小心,避免混淆。例如,以下是有效的 Python 指令碼

if 1:
  print("True")
print("Done")

如果你嘗試在互動式環境中按原樣輸入它,你可能會對結果感到驚訝

>>> if 1:
...   print("True")
... print("Done")
  File "<stdin>", line 3
    print("Done")
        ^
SyntaxError: invalid syntax

直譯器所指的是第二個 print 的縮排是意外的。你應該輸入一個空行來結束第一個(即“if”)語句,然後才能開始編寫下一個 print 語句。例如,你應該輸入這些語句,就像它們被寫成

if 1:
  print("True")
 
print("Done")

這將導致以下結果

>>> if 1:
...   print("True")
...
True
>>> print("Done")
Done
>>>

互動模式

[編輯 | 編輯原始碼]

與程式完成後 Python 退出不同,你可以使用 -i 標誌啟動互動式會話。這對除錯和原型設計非常有用。

python -i hello.py


對於 i 在範圍 -1 到 -5 的 -1 之間

   print(i)
華夏公益教科書