用户输入和while循环
學習如何接受用戶輸入,例如:假設有人要判斷自己是否到了投票的年齡,要編寫回答這個問題的程序,就需要知道用戶的年齡,這樣才能給出答案。因此,這種程序需要讓用戶輸入年齡,再將其與投票年齡進行比較,以判斷用戶是否到了投票的年齡,再給出答案。為此,我們需要使用函數input()。
1、函數input()的工作原理
函數input()讓程序暫停運行,等待用戶輸入一些文本。獲取用戶輸入后,Python將其存儲在一個變量中,以方便我們使用。
? 例如,下面的程序讓用戶輸入一些文本,再將這些文本呈現給用戶:
函數input()接受一個參數:即要向用戶顯示的提示或說明,讓用戶知道該如何做。在這個示例中,Python運行第一行代碼時,用戶將看到提示 Tell me something ,and I will repeat it back to you:。程序等待用戶輸入,并在用戶按回車鍵后繼續運行。輸入存儲在變量message中,接下來的print(message)將輸入呈現給用戶:
- 編寫清晰的程序
? 每當我們使用函數input()時,都應指定清晰而易于明白的提示,準確地指出我們希望用戶提供什么樣的信息,指出用戶輸入任何信息的提示都行,如下所示:
? 有時候,提示可能超過一行,例如,我們可能需要指出獲取特定輸入的原因。在這種情況下,可能提示存儲在一個變量中,再將該變量傳遞給函數input()。這樣,即便提示超過一行,input()語句也非常清晰。
此例創建了一種多行字符串的方式。第一行將消息的前半部分存儲在變量prompt中,在第二行中,運算符+=在存儲在prompt中的字符串末尾附加一個字符串。
- ?使用int()來獲取數值輸入
? 使用函數input()時,Python將用戶輸入解讀為字符串。
用戶輸入的是數字21,但我們請求Python提供變量age的值時,它返回的是‘21’,即用戶輸入的數值的字符串表示。如果我們只想打印輸入,這沒有問題,但如果我們試圖將輸入作為數字使用,就會引發錯誤:
因為它無法將字符串和整數進行比較,即不能將存儲在age中的字符串‘21’與數值18進行比較。為了解決這個問題,可以使用函數int(),他讓Python將輸入視為數值。函數int()將數字的字符串表示轉換為數值表示,如下:
- 求模運算符
? 處理數值信息時,求模運算符(%)是一個很有用的工具,它將兩個數相除并返回余數:
求模運算符不會指出一個數是另一個數的多少倍,而只能指出余數是多少。
? 如果一個數可被另一個數整除,余數就為0,因此求模運算符將返回0。我們可以利用這一點來判斷一個數是奇數還是偶數:
2、while循環簡介
? for循環用于針對集合中的每個元素的一個代碼塊,而while循環不斷地運行,直到指定的條件不滿足為止。
- 使用while循環
我們可以使用while循環來數數,例如,下面的while循環從1數到5:
在第一行,我們將current_number設置為1,從而指定從1開始數。接下來的while循環被設置為:只要current_number小于或等于5,就接著運行這個循環。循環中的代碼打印current_number的值,再使用代碼current_number+=1(代碼current_number=current_number+1)將其值加1。
只要滿足條件current_number<=5,Python就接著運行這個循環。由于1小于5,因此Python打印1,并將current_number加1,使其為2;由于2小于5,因此Python打印2,并將current_number加1,使其為3,以此類推。一旦current_number大于5,循環就將停止。整個程序也將到此結束。
? 我們每天使用的程序很可能就包含while循環。例如,游戲使用while循環,確保在玩家想玩時不斷運行,并在玩家想退出時停止運行。
- ?讓用戶選擇何時退出
? 可使用while循環讓程序在用戶愿意時不斷地運行,如下面的程序所示。我們在其中定義了一個退出值,只要用戶輸入的不是這個值,程序就接著運行。
首先,我們定義了一條提示信息,告訴用戶他有兩個選擇:要么輸入一條消息,要么輸入退出值(這里為quit)。接下來,我們創建了一個變量message,用于存儲用戶輸入的值。我們將變量message的初始值設置為空字符串‘’,讓Python首次執行while代碼行時有可供檢查的東西。Python首次執行while語句時,需要將message的值與‘quit’進行比較,但此時用戶還沒有輸入。如果沒有可供比較的東西,Python將無法繼續運行程序。為解決這個問題,我們必須給變量message指定一個初始值。雖然這個初始值只是一個空字符串,但符合要求,讓Python能夠執行while循環所需的比較。只要message的值不是‘quit’,這個循環就會不斷運行。
首次遇到這個循環時,message是一個空字符串,因此Python進入這個循環,執行到代碼行message=input(prompt)時,Python顯示提示消息,并等待用戶的輸入。不管用戶輸入是什么
?
轉載于:https://www.cnblogs.com/haohanTL/p/10939267.html
總結
以上是生活随笔為你收集整理的用户输入和while循环的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java的新项目学成在线笔记-day12
- 下一篇: 面向切面编程-日志切面应用