Python input()函數(shù)用法大全
input()函數(shù)獲取用戶輸入數(shù)據(jù),實(shí)現(xiàn)用戶交互
語(yǔ)法格式: 變量 = input('提示信息')
input()返回的是字符串,無(wú)論輸入的是數(shù)字還是字符串,默認(rèn)的輸入結(jié)束鍵是回車鍵
input()函數(shù)有一些特殊的用法
用法1:通過(guò)if判斷或iter()函數(shù)的哨兵值用法讓input()遇到回車鍵也能持續(xù)輸入
txt = ’’while True: k = input() if k == ’quit’:break txt += k + ’n’print(’*****以下是輸出內(nèi)容*****’)print(’txt:n’+txt)
效果如下:
這樣我們就可以讓input()好像忽略掉了回車鍵,可以持續(xù)輸入內(nèi)容,輸入quit之后敲回車才結(jié)束
也可以使用iter()函數(shù)的哨兵值用法
end_str = 'end' # 重新定義結(jié)束符txt = ''for line in iter(input, end_str): # 接收輸入,使用了iter的哨兵值用法 txt += line + 'n' # 拼接輸入內(nèi)容并追加換行print(’*****以下是輸出內(nèi)容*****’)print(’txt:n’ + txt)
用法2:限制用戶的輸入內(nèi)容,比如只能輸入字母
方式1:在輸出結(jié)果上進(jìn)行過(guò)濾,可以用正則表達(dá)式實(shí)現(xiàn)
import rewhile True: txt = input() txt = re.sub(’[^a-zA-Z]’, ’’, txt) print(txt)
效果如下:
方式2:在鍵盤上輸入上進(jìn)行限制,使用pynput第三方庫(kù)可以對(duì)用戶的鍵盤進(jìn)行監(jiān)聽(tīng)和操作
from pynput.keyboard import Listenerimport threadingdef listening(): def on_press(key):try: if not (65 <= key.vk <= 90): # 65~90是鍵盤a~z的編碼值print(’b’, end=’’) # b是退格符,相當(dāng)于鍵盤Backspaceexcept AttributeError: pass with Listener(on_press=on_press) as listener:listener.join()threading.Thread(target=listening).start()while True: txt = input() print(txt)
效果如下:
這樣的話就只能輸入字母了,輸入別的內(nèi)容都會(huì)被刪掉。
!!!不過(guò)實(shí)測(cè)監(jiān)控輸入不夠靈敏,偶發(fā)不能識(shí)別,不知道是不是電腦太卡的原因
以上用法1、2為轉(zhuǎn)載,原文鏈接:
https://blog.csdn.net/FujLiny/article/details/109554623
到此這篇關(guān)于Python input()函數(shù)用法大全的文章就介紹到這了,更多相關(guān)Python input()函數(shù)內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. el-input無(wú)法輸入的問(wèn)題和表單驗(yàn)證失敗問(wèn)題解決2. XML入門的常見(jiàn)問(wèn)題(三)3. XML 增、刪、改和查示例4. React實(shí)現(xiàn)一個(gè)倒計(jì)時(shí)hook組件實(shí)戰(zhàn)示例5. JavaScript中顏色模型的基礎(chǔ)知識(shí)與應(yīng)用詳解6. JavaScript快速實(shí)現(xiàn)一個(gè)顏色選擇器7. 報(bào)錯(cuò):XML頁(yè)無(wú)法顯示,下列標(biāo)記沒(méi)有被關(guān)閉解決方法8. CSS3實(shí)例分享之多重背景的實(shí)現(xiàn)(Multiple backgrounds)9. 前端html+css實(shí)現(xiàn)動(dòng)態(tài)生日快樂(lè)代碼10. 不要在HTML中濫用div
