鱼C论坛

 找回密码
 立即注册
查看: 2672|回复: 7

[已解决]0基础小白做个游戏都不会 向大佬求助

[复制链接]
发表于 2022-11-22 01:10:12 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
"""用python设计第一个小游戏"""

temp = input("不妨猜一下大宝贝在心里想的哪个数字.")
guess = int("temp")

if guess == 8:
    print("你是大宝贝心里的蛔虫嘛?!")
    print("哼!猜中了也没奖励!")
else:
    print("猜错啦,大宝贝心里想的是8")

print("游戏结束,不玩啦!")   


不妨猜一下大宝贝在心里想的哪个数字.8
Traceback (most recent call last):
  File "C:/Users/53005/Desktop/小游戏第二版.py", line 4, in <module>
    guess = int("temp")
ValueError: invalid literal for int() with base 10: 'temp'
>>>


情况就是这样,搞不明白哪里出错,向大佬请教下
最佳答案
2022-11-22 01:19:46
本帖最后由 jackz007 于 2022-11-22 01:22 编辑
  1. """用python设计第一个小游戏"""

  2. temp = input("不妨猜一下大宝贝在心里想的哪个数字.")
  3. guess = int("temp")    # 【这里有错】,temp 是变量名,是一个标识符,写成 "temp" 就成了一个字符串常量,和前面的键盘输入没有任何联系了,所以,必须把 "temp" 的双引号去掉,成为 guess = int(temp)

  4. if guess == 8:
  5.     print("你是大宝贝心里的蛔虫嘛?!")
  6.     print("哼!猜中了也没奖励!")
  7. else:
  8.     print("猜错啦,大宝贝心里想的是8")

  9. print("游戏结束,不玩啦!")   
复制代码

        这个是修改好的代码:
  1. """用python设计第一个小游戏"""

  2. temp = input("不妨猜一下大宝贝在心里想的哪个数字.")
  3. guess = int(temp)

  4. if guess == 8:
  5.     print("你是大宝贝心里的蛔虫嘛?!")
  6.     print("哼!猜中了也没奖励!")
  7. else:
  8.     print("猜错啦,大宝贝心里想的是8")

  9. print("游戏结束,不玩啦!")   
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-11-22 01:19:46 | 显示全部楼层    本楼为最佳答案   
本帖最后由 jackz007 于 2022-11-22 01:22 编辑
  1. """用python设计第一个小游戏"""

  2. temp = input("不妨猜一下大宝贝在心里想的哪个数字.")
  3. guess = int("temp")    # 【这里有错】,temp 是变量名,是一个标识符,写成 "temp" 就成了一个字符串常量,和前面的键盘输入没有任何联系了,所以,必须把 "temp" 的双引号去掉,成为 guess = int(temp)

  4. if guess == 8:
  5.     print("你是大宝贝心里的蛔虫嘛?!")
  6.     print("哼!猜中了也没奖励!")
  7. else:
  8.     print("猜错啦,大宝贝心里想的是8")

  9. print("游戏结束,不玩啦!")   
复制代码

        这个是修改好的代码:
  1. """用python设计第一个小游戏"""

  2. temp = input("不妨猜一下大宝贝在心里想的哪个数字.")
  3. guess = int(temp)

  4. if guess == 8:
  5.     print("你是大宝贝心里的蛔虫嘛?!")
  6.     print("哼!猜中了也没奖励!")
  7. else:
  8.     print("猜错啦,大宝贝心里想的是8")

  9. print("游戏结束,不玩啦!")   
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2022-11-22 01:25:52 | 显示全部楼层
jackz007 发表于 2022-11-22 01:19
这个是修改好的代码:

谢谢大佬  可以再问一下 为什么 if guess == 8:  可以   if guess == (任意英文字母):  就不行了呢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-22 01:32:48 | 显示全部楼层
本帖最后由 jackz007 于 2022-11-22 01:34 编辑
530050071 发表于 2022-11-22 01:25
谢谢大佬  可以再问一下 为什么 if guess == 8:  可以   if guess == (任意英文字母):  就不行了呢


        因为 8 是一个数字常量,如果要写成英文字符的话,Python 会首先认为是一个标识符,也就是变量名,而这个变量显然并不存在,所以,就报错了。
        如果,你多写一句
  1. v = 8
  2. if guess == v:
复制代码

        那就保证不会出错
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-11-22 02:16:04 From FishC Mobile | 显示全部楼层
jackz007 发表于 2022-11-22 01:32
因为 8 是一个数字常量,如果要写成英文字符的话,Python 会首先认为是一个标识符,也就是变量 ...

感谢大佬,意思是必须要给 他赋值,字母不能代表值,数字是常量,字母包括其他字符是变量,同样也不能给数字赋值,不能 8 = 10   是这个意思么。那如果说 x=你好    你好=1  那就是  两个字符都=1 是嘛,那我输出其中任意一个  是不是其他两个就得出来了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-22 08:44:17 From FishC Mobile | 显示全部楼层
本帖最后由 jackz007 于 2022-11-22 08:47 编辑
530050071 发表于 2022-11-22 02:16
感谢大佬,意思是必须要给 他赋值,字母不能代表值,数字是常量,字母包括其他字符是变量,同样也不能给 ...


       你确实需要静下心来,先好好看看Python 语言的书,系统学习一下 Python 语言的基础知识,也许只有这样才会消除你好多莫名其妙的想法和念头。请原谅,我说话有点直,但并无恶意。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-22 09:05:42 | 显示全部楼层
可以看懂报错信息才是关键啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-11-22 09:59:45 From FishC Mobile | 显示全部楼层
jackz007 发表于 2022-11-22 08:44
你确实需要静下心来,先好好看看Python 语言的书,系统学习一下 Python 语言的基础知识,也许只 ...

谢谢,可以推荐下书么,摸不清方向
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-6-2 22:42

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表