1. 程式人生 > 其它 >大爽Python入門教程 5-1 `input`輸入

大爽Python入門教程 5-1 `input`輸入

大爽Python入門公開課教案 點選檢視教程總目錄

1 input函式介紹

python 2.x 中,有raw_input()函式。
python 3.x 中只有input()函式。

使用input函式,可以讀取標準輸入,即使用者輸入。
input函式可以接受prompt作為可選引數,
可以將prompt作為提示輸出到控制檯,再接受使用者輸入。
示例如下

>>> a = input()
asdfas
>>> a
'asdfas'
>>> name = input("input a name: ")
input a name: harry
>>> name
'harry'

補充說明: 輕量級ide atom不支援接受使用者輸入,sublime text 支援的也很有限。
如果程式碼裡面要使用input,這裡推薦使用pycharm或者vs code

2 使用迴圈獲取數字

程式碼裡面,我們常常需要使用者輸入數字。
有的簡單題目裡面,會假設使用者輸入的數字,不考慮使用者輸入其他的情況。
但是稍微成熟一點的程式,都要處理這個問題。
有很多辦法,我們這裡使用迴圈加數字判斷來確保獲取輸入數字
程式碼如下

num = input("Please enter a num: ")
while not num.isdigit():
    num = input("Please enter a num: ")

print("Your num: %s" % num)

執行例項如下

Please enter a num: a
Please enter a num: dd
Please enter a num: 123a
Please enter a num: 123
Your num: 123

3 使用迴圈獲取指定輸入

假設我們在開發一個非常簡易的選課系統,
需要檢測使用者選擇的課程,在我們的可選課程中。

那麼也推薦使用迴圈,來確保使用者的選擇是符合規則的。

courses = ["math", "music", "grammar", "history"]

course = input("Please select a course: ")
while course not in courses:
    print("Invalid selection: %s" % course)
    course = input("Please select a course: ")

print("You select course: %s" % course)

執行例項如下

Please select a course: dance
Invalid selection: dance
Please select a course: paint
Invalid selection: paint
Please select a course: math
You select course: math

4 使用函式包裝功能

對於大一點的專案,
推薦把第二部分第三部分的程式碼寫進一個函式裡,方便呼叫。

獲取數字的功能寫進函式

def get_num():
    num = input("Please enter a num: ")
    while not num.isdigit():
        num = input("Please enter a num: ")

    return num

選擇指定課程的功能寫進函式

def select_course():
    courses = ["math", "music", "grammar", "history"]

    course = input("Please select a course: ")
    while course not in courses:
        print("Invalid selection: %s" % course)
        course = input("Please select a course: ")

    return course