當我們使用Python編寫程序時,我們通常需要與用戶交互獲得輸入數據。為了能夠讀取用戶輸入數據,Python提供了一個內置函數input()。在本文中,我們將詳細介紹如何使用Python的input函數。
一、input函數的基本用法
input函數用於讀取用戶輸入的數據,在讀取之前需要先向用戶展示提示信息。該函數的基本用法如下:
name = input("請輸入您的名字:") print("您好," + name + "!")
運行該程序後,會在控制台輸出”請輸入您的名字:”,等待用戶輸入。當用戶輸入完姓名後,程序會將輸入的值保存到變量name中,並輸出”您好,” + name + “!”。
需要注意的是,input函數返回的是一個字符串類型(str),因此如果需要獲取其他類型的數據(例如整型或浮點型),需要通過強制類型轉換來實現,例如:
age = int(input("請輸入您的年齡:")) print("您的年齡為:" + str(age) + "歲")
在上面的代碼中,我們獲取用戶輸入的年齡,然後將其轉換為整型。請注意,我們使用str()將年齡強制轉換為字符串,這是為了能夠用』+』連接字符串。
二、input函數的高級用法
1.設置缺省值
在程序設計中,有時候我們需要給用戶提供默認值以方便輸入,在這種情況下可以使用input函數的第一個參數為缺省值,例如:
name = input("請輸入您的名字:(默認為小明)") or "小明" print("您好," + name + "!")
在上面的代碼中,如果用戶沒有輸入名字,那麼默認值為”小明”。如果用戶輸入了名字,則使用用戶的輸入值。或運算符”or”用來判斷用戶是否輸入了名字,如果沒輸入則返回缺省值”小明”。
2.設置超時時間
有時候,我們需要限制用戶對某個輸入的響應時間。例如,在遊戲或安防方面,我們需要對用戶在特定時間內作出響應。可以使用input函數的”signal.alarm()”來實現此功能,例如:
import signal import time def interrupt(signum, frame): raise Exception("Time out!") signal.signal(signal.SIGALRM, interrupt) signal.alarm(5) try: input("5s內輸入您的名字:") except Exception as e: print(e) else: signal.alarm(0) print("輸入正確")
在上面的代碼中,我們使用了Python的signal模塊,設置超時時間為5秒。如果在5秒內用戶沒有輸入名字,則程序會報出異常。否則,程序會正常運行,並輸出”輸入正確”。
3.讀取多個值
有時候,我們需要從用戶輸入一次中讀取多個值。在這種情況下,我們可以使用split()函數,例如:
str_input = input("請輸入您的名字、年齡、性別,以逗號分隔:") name, age, sex = str_input.split(',') print("姓名:" + name) print("年齡:" + age) print("性別:" + sex)
在上面的代碼中,我們要求用戶輸入姓名、年齡和性別,然後將輸入的值通過逗號(“,”)分隔開,最後將每個值賦值給不同的變量。需要注意的是,輸入的多個值分隔符必須為同一個符號。
三、總結
在本文中,我們詳細介紹了如何使用Python的input函數讀取用戶輸入。我們涉及了input函數的基本用法和高級用法,例如設置缺省值、設置超時時間和讀取多個值。通過這些實例,我們可以更好地掌握Python的input函數。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/157020.html