您好,登錄后才能下訂單哦!
小編這次要給大家分享的是python如何實現逢七拍腿小游戲,文章內容豐富,感興趣的小伙伴可以來了解一下,希望大家閱讀完這篇文章之后能夠有所收獲。
逢七拍腿游戲
幾個小朋友在一起玩逢七拍腿的游戲,從1開始數數,當數到7的倍數或者尾號是7時,拍一下腿。現在從1數到99,假設每個人都沒有錯,計算一下共要拍腿幾次?
第一種實現思路:通過在for循環語句中使用continue語句來實現計算拍腿次數。首先假設可拍腿次數為最高次數99,每觸發滿足的條件的時候就直接跳轉到下一次循環當中,最后的total減1則不執行,不滿足條件時total則減1。因此實際上total減去的是不滿足條件的數字,代碼如下:
total = 99 #記錄拍腿次數的變量 for number in range(1,100): #創建一個從1數到99的循環 if number&7 == 0: #判斷是否為7的倍數 continue #跳轉到下一次循環 else: string = str(number) #將數值轉化為字符串,方便判斷尾號是否為7 if string.endswith('7'): #判斷尾號數字是否為7 continue #跳轉到下一次循環 total -= 1 #可拍腿次數減1 print("從1數到99共拍腿",total,"次") #顯示拍腿次數
在此處我們新學到一個函數為endswith(),我們先來討論一下endswith()函數的作用。
函數:endswith()
作用:判斷字符串是否以指定字符或子字符串結尾,常用于判斷文件類型
相關函數:判斷字符串開頭 startswith()
運行結果如下:
第二種實現思路:通過設置一個計數器,每觸發條件一次計數器就加1.代碼如下:
total = 0 #記錄拍腿次數的變量 for number in range(1,100): #創建一個從1數到99的循環 if number&7 == 0: #判斷是否為7的倍數 total +=1 #可拍腿次數加1次 else: string = str(number) #將數值轉化為字符串,方便判斷尾號是否為7 if string.endswith('7'): #判斷尾號數字是否為7 total +=1 #可拍腿次數加1次 print("從1數到99共拍腿",total,"次") #顯示拍腿次數
這兩種方法都可以實現,很有趣的是第一種實際上是一種逆向的思維,我們已經習慣于加法,很少會使用到減法。第二種是我們很多人習慣的思考方式。在學習python的過程當中,多發散一下思維,有時候逆向地思考也可以達到要實現的目的,甚至會更快!
看完這篇關于python如何實現逢七拍腿小游戲的文章,如果覺得文章內容寫得不錯的話,可以把它分享出去給更多人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。