1、循環退出dom
contin語句:跳出這次循環,繼續下一次循環。ui
brek語句:退出循環。遊戲
pass:展位符input
exit:退出程序it
示例:for循環
for i in xrange(1,10): #若是i等於3就跳出這次循環,執行下一個 if i == 3: continue #若是i等於5就結束循環 elif i==5: break #若是i等於7就退出整個程序 elif i==7: exit() print (i) else: print ('main end')
執行結果:import
1,2,4循環
練習題:程序
猜數字遊戲,玩家有六次機會猜數字。每次都有反饋,若是超過六次則失敗方法
import random random_number=random.randint(1,20) #定義次數 count=0 for i in xrange(1,7): print (count) in_number = int(raw_input('請輸入你猜的數字:')) print (in_number, random_number) if count==6: print ("已超過次數") elif in_number==random_number: print ("恭喜你,猜中了") break elif in_number > random_number: print ("猜的太大了") continue elif in_number < random_number: print ("猜的過小了") continue count+1
2、while循環
while循環用在有條件的循環
基本格式:
while 判斷條件: 執行語句……
brek等在for循環中使用的退出語句在while中一樣適用
示例:
x='' while x !='q': print ('hello') x = raw_input('please input q for quit:') if not x : break else: print ('world')
3、練習題
一、將一個正整數分解質因數。例如:輸入90,打印出90=2*3*3*5。
程序分析:對n進行分解質因數,應先找到一個最小的質數i,而後按下述步驟完成:
(1)若是分解後商爲1,則說明分解質因數的過程已經結束,打印出便可。
(2)若是商不爲1,則應打印出i的值,並用n除以i的商,做爲新的正整數進行分解,
重複執行第一步。
(3)若是n不能被i整除,則i的值加1,重複執行第一步。
number = int(raw_input("Enter a number: ")) while number != 1: for i in range(1, number + 1): if (number % i) == 0 and i != 1: number = number / i if number == 1: print " %s" % i else: print " %d*" % i, break
二、 猴子吃桃問題:猴子第一天摘下若干個桃子,立即吃了一半,還不癮,又多吃了一個,次日早上又將剩下的桃子吃掉一半,又多吃了一個。之後天天早上都吃了前一天剩下的一半零一個。到第10天早上想再吃時,見只剩下一個桃子了。求第一天共摘了多少。
程序分析:採起逆向思惟的方法,從後往前推斷。
x = 1 for i in range(9): x = (x+1) * 2 print('第%s天還有%s個桃子' % (i, x)) print('第1天共摘了%s個桃子' % x)