使用者輸入

互動輸入

要從使用者那裡獲得輸入,請使用 input 函式( 注意 :在 Python 2.x 中,該函式被稱為 raw_input,儘管 Python 2.x 有自己的 input 版本完全不同):

Python 2.x >= 2.3

name = raw_input("What is your name? ")
# Out: What is your name? _

安全性備註不要在 Python2 中使用 input() - 輸入的文字將被評估為 Python 表示式(相當於 Python3 中的 eval(input())),這可能很容易成為漏洞。有關使用此功能的風險的詳細資訊,請參閱此文章

Python 3.x >= 3.0

name = input("What is your name? ")
# Out: What is your name? _

本示例的其餘部分將使用 Python 3 語法。

該函式接受一個字串引數,該引數將其顯示為提示並返回一個字串。上面的程式碼提供了一個提示,等待使用者輸入。

name = input("What is your name? ")
# Out: What is your name?

如果使用者鍵入 Bob 並按下 enter 鍵,變數 name 將被分配給字串 Bob

name = input("What is your name? ")
# Out: What is your name? Bob
print(name)
# Out: Bob

請注意,input 始終為 str 型別,如果你希望使用者輸入數字,這一點非常重要。因此,你需要在嘗試將其用作數字之前轉換 str

x = input("Write a number:")
# Out: Write a number: 10
x / 2
# Out: TypeError: unsupported operand type(s) for /: 'str' and 'int'
float(x) / 2
# Out: 5.0

注意:建議在處理使用者輸入時使用 try / except捕獲異常 。例如,如果你的程式碼想要將 raw_input 轉換為 int,並且使用者所寫的內容是無法播放的,那麼它就會提出一個問題。