年近半百自學Python之while迴圈結構練習

例1。超市購物案例:

#去超市買東西,單價和數量,允許買多件商品

#計算總額 float

total=0 #初始變數賦值要放在迴圈體外。

number=0

while

True: #當不知道迴圈次數時,可考慮用while True

price=float(input(‘輸入價格:’)) #先買

number=int(input(‘輸入數量:’)

total+=price*number #金額累加

number+=number #數量累加

#判斷是否繼續購買

answer=input(‘當前商品總額:%。2f,是否繼續新增商品(q表示退出)?’%total)

if

answer==‘q’:

break #跳出while迴圈

print(‘商品數量共:%d,商品的總額是:%。2f ’ %(number,total)

————————————————-

例2、猜數字

#產生隨機數 random。randint(start,end)

#可以猜多次,直到猜對為止,如果猜錯了適當給出提示,猜大了還是猜小了

#統計猜了幾次

#如果1次就中,趕快去買彩票吧,運氣爆了

#2-5次,猜對了,運氣還可以哦

#6次以上,猜對了,運氣一般啊

import random

ran=random。randint(1,50)

count=0

#迴圈猜多次

while True: #當我們不知道迴圈次數時,考慮用while True

guess=int(input(‘猜一個1-50之間的數字:’))

count+=1

#猜對就結束

if

guess==ran:

if

count==1:

print(‘趕快去買彩票吧,運氣爆了!’)

elif

2<=count<=5:

print(‘猜對了,運氣還可以哦!’)

elif

count>=6:

print(‘猜對了,運氣一般啊!’)

break

elif

guess>ran:

print(‘猜大了,再小一點!’)

else

print(‘猜小了,再大一點!)

————————————————-

#猜拳遊戲 三局兩勝

import random

n=1

#計數

p_count=0

m_count=0

while n<=3:

#猜拳

#機器產生數字 0 1 2

ran=random。randint(0,2)

#人猜數字

guess=int(input(’請輸入:剪刀(0) 石頭(1) 布(2)\n‘))

#比較判斷

if (guess==0 and ran==2) or (guess==1 and ran==0) or (guess==2 and ran==1)

print(’~~~~~本局我贏了!~~~~~~‘)

p_count+=1

elif (ran==0 and guess==2) or (ran==1 and guess==0) or (ran==2 and guess==1)

print(’~~~~~本局機器贏了!~~~~~~‘)

m_count+=1

else:

print(’本局平局!‘)

n+=1

#比較勝負:

if p_count>m_count:

print(‘最終人獲勝了!’)

elif p_count

print(‘最終機器獲勝!’)

else:

print(‘最終平局!’)