0. 下面的循環會打印多少次"I Love FishC"?
for i in range(0, 10, 2):
print('I Love FishC')
打印5次,range(start,stop,間隔)
1. 下面的循環會打印多少次"I Love FishC"?
for i in 5:
print('I Love FishC')
出錯,無效語法,5是整型,不能作為迭代數值
2.回顧一下 break 和 continue 在循環中起到的作用?
答:break 為條件成立時終止循環,結束程序。continue為條件成立時終止循環回到循環體開始位置,如果條件為假時候執行continue下面的語句。
答:break 為條件成立時終止循環,結束程序。continue為條件成立時終止循環回到循環體開始位置,如果條件為假時候執行continue下面的語句。
3.請問 range(10) 生成哪些數?
答:0,1,2,3,4,5,6,7,8,9
4.什么情況下我們要使循環永遠為真?
while Ture:
循環體
同樣用於游戲實現,因為游戲只要運行着,就需要時刻接收用戶輸入,因此使用永遠為真確保游戲“在線”。操作系統也是同樣的道理,時刻待命,操作系統永遠為真的這個循環叫做消息循環。另外,許多通訊服務器的客戶端/服務器系統也是通過這樣的原理來工作的。
所以永遠為“真”雖然是“死循環”,但不一定是壞事,再說了,我們可以隨時用 break 來跳出循環!
所以永遠為“真”雖然是“死循環”,但不一定是壞事,再說了,我們可以隨時用 break 來跳出循環!
5.【學會提高代碼的效率】你的覺得以下代碼效率方面怎樣?有沒有辦法可以大幅度改進(仍然使用while)?
i = 0
string = 'ILoveFishC.com'
while i < len(string)):
print(i)
i += 1
答:
i =0
string = 'ILoveFishC.com'
length =len(string)
while i< length:
print(i)
i +=1
動手:
0.設計一個驗證用戶密碼程序,用戶只有三次機會輸入錯誤,不過如果用戶輸入的內容中包含"*"則不計算在內。
自己寫的 ci==0時,有問題,沒有解決
mima='123aaa'
ci=3
temp =input('shurumima:')
while ci:
if temp==mima:
print('zhengque')
break
elif '*' in temp:
temp=input('buenngbaoh *,cishu%s,chongxinshuru'%ci)
elif ci ==0:
print('zhanghaoshuoding,qing10fenzhonghou')
else:
ci -=1
temp=input('cishushaoleyici,%s,chongxinshuru'%ci)
小甲魚代碼:
count = 3
password = 'FishC.com'
while count:
passwd = input('請輸入密碼:')
if passwd == password:
print('密碼正確,進入程序......')
break
elif '*' in passwd:
print('密碼中不能含有"*"號!您還有', count, '次機會!', end=' ')
continue
else:
print('密碼輸入錯誤!您還有', count-1, '次機會!', end=' ')
count -= 1
1.編寫一個程序,求 100~999 之間的所有水仙花數。
如果一個 3 位數等於其各位數字的立方和,則稱這個數為水仙花數。例如:153 = 1^3 + 5^3 + 3^3,因此 153 就是一個水仙花數。
如果一個 3 位數等於其各位數字的立方和,則稱這個數為水仙花數。例如:153 = 1^3 + 5^3 + 3^3,因此 153 就是一個水仙花數。
for a in range(100,1000):
i=a
i==(i//100)**3+((i//10)%10)**3+(i%10)**3
if i==a:
print(i)
else:
print(' ')
小甲魚代碼:
for i in range(100, 1000):
sum = 0
temp = i
while temp:
sum = sum + (temp%10) ** 3
temp //= 10 # 注意這里要使用地板除哦~
if sum == i:
print(i)
2.三色球問題
有紅、黃、藍三種顏色的球,其中紅球 3 個,黃球 3 個,藍球 6 個。先將這 12 個球混合放在一個盒子中,從中任意摸出 8 個球,編程計算摸出球的各種顏色搭配
藍色必有 2-6個 紅色0-3個 黃色0-3個
print('red\tyellow\tblue')
for red in range(0, 4):
for yellow in range(0, 4):
for blue in range(2, 7):
if red + yellow + blue == 8:
print(red, '\t', yellow, '\t', blue)
