Python-猜數字游戲

🎈 博主:一只程序猿子

🎈?博客主頁:一只程序猿子 博客主頁

🎈?個人介紹:愛好(bushi)編程!

🎈 創作不易:喜歡的話麻煩您點個👍和?

🎈?歡迎訪問我的主頁(點我直達)

🎈?除此之外您還可以通過個人名片聯系我 👉👉👉👉👉👉

? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

如果您喜歡我的文章且富有,我說:公主 or 王子 請打賞!!!

額滴名片兒
?
求打賞🥺

目錄

1.介紹

2.知識點

(1)判斷語句

(2)循環語句

3.源碼

4.運行效果


1.介紹

????????猜數字游戲是一種古老的益智游戲,玩家需要猜測對方的數字序列,根據對方給出的提示來判斷數字的正確性和位置。本文將介紹如何使用Python實現一個簡單的猜數字游戲!

2.知識點

(1)判斷語句

if 判斷條件1:符合判斷條件1則執行這里面的代碼塊
elif 判斷條件2:如果不符合判斷條件1且符合判斷條件2則執行這里面的代碼塊
# 可以根據情況添加多個elif
else:以上的判斷條件都不符合則執行這里的代碼塊

(2)循環語句

while(循環條件):當滿足循環條件時執行這里的代碼塊

注意:?

在while循環中,條件表達式的值會不斷地被檢查,直到它變為False為止。如果條件表達式的值一直為True,則代碼塊會一直被執行,直到遇到break語句或程序異常終止。

使用while循環時需要注意以下幾點:

  1. 確保條件表達式的值在某個時刻變為False,否則循環將一直執行下去,導致程序死循環。
  2. 在循環體內需要使用變量來記錄狀態或控制循環次數,否則可能導致無限循環。
  3. 在循環體內需要注意變量的作用域,如果變量在循環體內被定義,則需要使用global或nonlocal語句來聲明它是全局變量或外部變量的引用。
  4. 在循環中需要適當地使用break和continue語句來控制循環的流程和終止條件。

3.源碼

'''
這是一個簡單的猜數字游戲
猜數字游戲:一種古老的益智游戲,玩家需要猜測對方的數字序列,根據對方給出的提示來判斷數字的正確性和位置。
'''
# 引入 random 模塊,用于生成隨機數
import random# 定義一個名為 BullsAndCows 的類,此類將實現猜數字游戲的主要邏輯
class BullsAndCows(object):# 初始化方法,當創建 BullsAndCows 類的實例時自動執行def __init__(self):# 打印游戲開始的提示信息,使用 "*" 字符來美化輸出print("*" * 20 + "猜數字游戲" + "*" * 20 + "\n")# 在 0 到 100 之間生成一個隨機數作為需要被猜測的數字self.number = random.randint(0, 101)# 定義一個 bulls_and_cows 方法,用于實現猜數字游戲的主體邏輯def bulls_and_cows(self):# 設置玩家有 10 次猜測機會chance = 10# 當玩家還有機會猜測時,執行循環while (chance > 0):try:# 提示玩家輸入他們猜測的數字,并嘗試將其轉換為整數player_num = int(input("請輸入您猜的數字: "))# 如果玩家輸入的不是一個整數,拋出 ValueError 異常并給出提示信息except ValueError as e:print(f"請輸入0-100的整數,而不是其他字符!")# 如果玩家輸入不合法,立即跳過本次循環中剩余的代碼,回到循環的開始處并執行下一次循環continue# 每猜一次,機會減少一次chance -= 1# 如果玩家猜的數字大于正確數字,提示玩家數字太大if player_num > self.number:print(f"您猜的數字太大了!!!")# 如果玩家猜對了數字,結束游戲并給出正確答案和玩家的猜測次數elif player_num == self.number:print(f"正確答案:{self.number} 恭喜您猜對了!!!! 共猜了 {10 - chance} 次!")break# 如果玩家猜的數字小于正確數字,提示玩家數字太小else:print(f"您猜的數字太小了!!!")# 當玩家還有最后一次機會時,給出提示信息if chance == 1:print("注意! 您只有最后一次機會了!!!\n")# 當玩家猜測次數用完時,結束游戲并給出正確答案elif chance == 0:print(f"游戲結束!!!,很遺憾您失敗了,正確答案: {self.number}\n")# 當玩家還有多次機會時,給出提示信息else:print(f"你還有 {chance} 次機會!加油!\n")# 游戲結束后打印游戲結束的提示信息,使用 "*" 字符來美化輸出print("\n" + "*" * 20 + "游戲已結束" + "*" * 20)

貼心的小猿子已為代碼逐行添加注釋!?

4.運行效果

?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/207633.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/207633.shtml
英文地址,請注明出處:http://en.pswp.cn/news/207633.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

免費的AI改寫文案軟件,熱門AI改寫文案軟件【2024】

在數字化時代,文案創作變得更為便捷,其中AI改寫文案軟件的興起為寫作者們帶來了全新的創作體驗。這些工具通過智能算法和自然語言處理技術,能夠快速改寫文本,提高創作效率。本文將深入探討AI改寫文案軟件的現狀,介紹一…

LeetCode題:174. 地下城游戲

目錄 一、題目要求 二、解題思路 (1)狀態表示 (2)狀態轉移方程 (3)初始化dp表 (4)填表順序 (5)返回值 三、代碼 一、題目要求 174. 地下城游戲 惡魔們…

swagger入門

swagger入門 pom依賴 不用專門導入swagger 因為springboot已經將它集成了 org.springframework.boot spring-boot-starter com.github.xiaoymin knife4j-spring-boot-starter Swagger配置類 Configuration public class SwaggerConfig { // 創建并配置Docket Bean&#xf…

snakeyaml編輯yaml文件并覆蓋注釋

文章目錄 前言技術積累實戰演示1、引入maven依賴2、覆蓋注釋工具類3、snakeyaml工具類4、測試用例5、測試效果展示 寫在最后 前言 最近在做一個動態整合框架的項目,需要根據需求動態組裝各個功能模塊。其中就涉及到了在application.yaml中加入其他模塊的配置&#…

TCP傳輸層詳解(計算機網絡復習)

介紹:TCP/IP包含了一系列的協議,也叫TCP/IP協議族,簡稱TCP/IP。該協議族提供了點對點的連接機制,并將傳輸數據幀的封裝、尋址、傳輸、路由以及接收方式都予以標準化 TCP/IP的分層模型 在講TCP/IP協議之前,首先介紹一…

力扣貪心題解 跳躍游戲

55. 跳躍游戲 - 力扣(LeetCode) 給你一個非負整數數組 nums ,你最初位于數組的 第一個下標 。數組中的每個元素代表你在該位置可以跳躍的最大長度。 判斷你是否能夠到達最后一個下標,如果可以,返回 true &#xff1b…

信息系統開發方法

企業信息系統對于企業信息化的重要意義是不言而喻的。從實際運行的效果來看,有些信息系統運行得很成功,取得了巨大的經濟效益和社會效益;但也有些信息系統效果并不顯著,甚至還有個別信息系統開始時還能正常運行,可時間…

廣州數字孿生賦能工業制造,加速推進制造業數字化轉型

廣州數字孿生賦能工業制造,加速推進制造業數字化轉型。數字孿生系統基于歷史數據、實時數據,采用人工智能、大數據分析等新一代信息技術對物理實體的組成、特征、功能和性能進行數字化定義和建模。通過構建在信息世界對物理實體的等價映射,對…

Axure官方軟件安裝、漢化保姆級教程(帶官方資源下載)

1.下載漢化包 百度云鏈接:https://pan.baidu.com/s/1lluobjjBZvitASMt8e0A_w?pwdjqxn 提取碼: jqxn 2.解壓壓縮包 3.安裝Axure 進行安裝 點擊next 打勾,然后next, 默認是c盤,修改成自己的文件夾(不要什么都放c盤里…

RestTemplate硬編碼的使用

RestTemplate是由Spring框架提供的一個可用于應用中調用rest服務的類它簡化了與http服務的通信方式,統一了RESTFul的標準,封裝了http連接,我們只需要傳入url及其返回值類型即可。相較于之前常用的HttpClient,RestTemplate是一種更…

API測試基礎之http協議

http簡介: http(超文本傳輸協議)是一個簡單的請求-響應協議,它通常運行在TCP(傳輸控制協議)之上。它指定了客戶端可能發送給服務器什么樣的消息以及得到什么樣的響應。請求和響應消息的頭以ASCII碼形式給出…

遠程控制如何賦能智能制造?貝銳向日葵制造業場景案例解析

隨著數字化轉型在制造業的不斷深入,企業在產線端也逐漸投入更多智能化設備,數字化、智能化設備其中一個比較顯著的優勢就是可以依托互聯網實現遠程運維和調試,大大提升產線設備的穩定性和工作效率;而遠程調試運維一個重要的實現方…

人工智能原理復習--搜索策略(一)

文章目錄 上一篇搜索概述一般圖搜索盲目搜索下一篇 上一篇 人工智能原理復習–確定性推理 搜索概述 問題求解分為兩大類:知識貧乏系統(依靠搜索技術解決)、知識豐富系統(依靠推理技術) 兩大類搜索技術: …

海思3516DV500下的目標識別算法運行評估,包含yolov7,yolov8

目前在3516DV500下,自己訓練的模型的評估實測結果。根據實際模型會有些許差異。 涉及到技術細節的部分因為商業用途,有部分省略。如需相關技術服務項目合作可私信聯系。 我司推出的目標識別跟蹤模塊,支持熱紅外、可見光主流多光譜視頻輸入與目…

WeiPHP 微信開發平臺 SQL注入漏洞復現

0x01 產品簡介 weiphp 是一個開源,高效,簡潔的微信開發平臺,基于 oneThink 內容管理框架實現。 0x02 漏洞概述 weiphp 微信開發平臺 _send_by_group、 wp_where、 get_package_template等接口處存在 SQL 注入漏洞,攻擊者利用此漏洞可獲取數據庫中的信息(例如,管理員后臺…

三數組最小距離:2020年408算法題

算法思想 算法實現 #define INT_MAX 0x7fffffff //c語言int類型最大值 //計算絕對值 int abs(int a){if(a<0) return -a;else return a; } //判斷a是否為3個數中最小值 bool isMin(int a,int b,int c){if(a<b&&a<c) return true;return false; }//主函數 in…

RepidJson中Writer類、FilewriteStream類、 PrettyWriter類的區別

rapidjson是一個C的JSON解析庫&#xff0c;可以用于解析和序列化JSON數據。 Writer是rapidjson中一種基本的輸出流&#xff0c;用于將JSON數據輸出到字符串或文件中。 FileWriteStream是一個Writer的子類&#xff0c;它專門用于將JSON數據輸出到文件中。相比于普通的Writer&a…

平臺工程文化:軟件開發的創新路徑和協作之道

在快速發展的軟件開發領域&#xff0c;具有前瞻性思維的企業組織正在擁抱平臺工程文化的變革力量。這種創新方法強調創建共享平臺、工具和實踐&#xff0c;使開發人員能夠更快、更高效地交付高質量的軟件。在本文中&#xff0c;我們將深入探討平臺工程文化的核心原則和深遠的好…

C語言期末考試復習PTA數據類型及表達式-分支結構程序-循環結構-數組經典選擇題

目錄 第一章&#xff1a;C語言數據類型和表達式 第一題&#xff1a; 第二題&#xff1a; 第三題&#xff1a; 第四題&#xff1a; 第五題&#xff1a; 第六題&#xff1a; 第七題&#xff1a; 第八題&#xff1a; 第九題&#xff1a; 第二章&#xff1a;分支結構程序…

打包 抖音直播云游戲

抖音直播云游戲 oaid資源中的bcpkix-jdk15to18-1.68.jar與抖音云游戲的資源沖突。 其實資源名稱是一樣的&#xff0c;拷貝時資源名稱有變化。 為解決此問題&#xff0c;需要規范化文件的資源名稱&#xff0c;將.置為_ Error: Command failed: cmd /c echo off && Chc…