今天是Python學習的第十五天,這幾天的學習重點會是while迴圈,今天是使用 while 迴圈處理更複雜的條件判斷、結合迴圈與函數、數據結構來完成任務和優化 while 迴圈的結構與效率。
while 迴圈通常用來處理需要不斷重複的任務,直到用戶給出特定輸入為止。
例一:動態處理用戶輸入
while True:
user_input = input("請輸入一個數字(輸入 'exit' 離開):")
if user_input == 'exit':
break
print(f"你輸入了數字:{user_input}")
這個例子模擬了一個持續詢問用戶輸入的程序,直到用戶輸入 'exit' 時才終止。
while 迴圈可以用來處理錯誤輸入情況,直到用戶輸入正確的值。
例二:處理錯誤輸入並重試
while True:
try:
number = int(input("請輸入一個正整數:"))
if number > 0:
print(f"你輸入的正整數是:{number}")
break
else:
print("輸入的數字不是正整數,請重試。")
except ValueError:
print("無效輸入,請輸入一個數字。")
這段程式碼使用 try-except 來捕獲用戶輸入錯誤的情況,並在用戶輸入無效時重試。
這三天的學習從 while 迴圈的基礎到進階再到實際應用,讓我能夠靈活運用 while 處理不同場景的需求。通過理解 break、continue、else 等語句,可以更好地控制迴圈的流程,同時學會處理複雜的動態輸入和條件判斷。這些知識將讓我在程式開發中,更加有效率地解決重複性問題。
最後我們可以利用這幾天這幾天所學的 while 迴圈知識實現一個簡單的猜數字遊戲:
import random
target = random.randint(1, 100)
attempts = 0
while True:
guess = int(input("請猜一個 1 到 100 之間的數字:"))
attempts += 1
if guess < target:
print("太小了!")
elif guess > target:
print("太大了!")
else:
print(f"恭喜你猜對了!總共猜了 {attempts} 次。")
break
使用 while 迴圈不斷詢問用戶輸入,直到猜中目標數字為止。