鱼C论坛

 找回密码
 立即注册
查看: 4452|回复: 42

[已解决]零基础学Python P3 002用Python设计第一个游戏

[复制链接]
发表于 2020-4-17 17:01:15 | 显示全部楼层 |阅读模式

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

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

x
temp = input("猜一下我现在心里想的是那个数字:")
guess =int(temp)
if guess == 8:


请问一下  是谁赋予的8这个值   然后是只能用数字吗?还是在哪串代码里转成只能用数字了?

刚刚听到这个的时候一直想不明白 反复看了好几遍查了好久也没解决  可能我比较笨吧  ....


最佳答案
2020-4-17 18:15:37
本帖最后由 heidern0612 于 2020-4-17 18:17 编辑
61869319@qq.com 发表于 2020-4-17 18:12
我...可能没有想的那么复杂  我觉得这个答案应该很简单 而且就在这几行代码里  只是我哪里钻了牛角尖没悟 ...


你这么想:

在你设计这个程序之前,是不是你已经知道8是答案了,但是玩你这个游戏的人不知道答案是什么。

如果guess等于8,是不是下面就没猜的必要了,8已经是答案了,那下面还while,if个什么。

所以只有guess不等于8,也就是说,你猜错的情况下,下面才有while和if等循环。


也就是说:

在你没学那么深的设计之前,你需要提前有个变量,用于把正确答案存起来备用,然后用来判断用户猜的是不是你存的这个答案。

如果你连这个正确答案都没有,用户拿什么去猜?或者说用户猜了一个,你拿什么判断用户输入的是不是对的?

小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2020-4-17 17:03:56 | 显示全部楼层
本帖最后由 qiuyouzhi 于 2020-4-17 17:05 编辑

8就是8啊?这是一个数字,不需要赋值啊。。
要是真要有一个人给它赋值的话,那就是
Python的开发者。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-17 17:11:55 | 显示全部楼层
这个8可以改成任何数啊
它就是个数字
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-17 17:24:53 | 显示全部楼层
qiuyouzhi 发表于 2020-4-17 17:03
8就是8啊?这是一个数字,不需要赋值啊。。
要是真要有一个人给它赋值的话,那就是
Python的开发者。


输入8之后不是会响应接下来的对话吗    这个8是怎么来的    还是说8只是响应接下来对话的一个开关   而不是1+1=2一样的标准答案   等于是我就是想要这样呈现才这样写的?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-17 17:26:11 | 显示全部楼层
61869319@qq.com 发表于 2020-4-17 17:24
输入8之后不是会响应接下来的对话吗    这个8是怎么来的    还是说8只是响应接下来对话的一个开关   而 ...

不是,8就是一个数字啊???
哪有什么来历不来历的
常量就是常量
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-17 17:27:03 | 显示全部楼层
隔壁繁星吖 发表于 2020-4-17 17:11
这个8可以改成任何数啊
它就是个数字

那是如何判断你输入的数值是正确的呢?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-17 17:42:49 | 显示全部楼层
这说明,小甲鱼喜欢8这个数字
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-17 17:51:54 | 显示全部楼层
qiuyouzhi 发表于 2020-4-17 17:26
不是,8就是一个数字啊???
哪有什么来历不来历的
常量就是常量

例如有道题是问“1+1=?”后台可以设置标准答案为2
这个2是在哪一步设置为标准答案的
temp = input("1+1:")
guess =int(temp)
if guess == 2:
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-17 17:52:32 | 显示全部楼层
txxcat 发表于 2020-4-17 17:42
这说明,小甲鱼喜欢8这个数字。

嗯,我也喜欢
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-17 17:56:16 | 显示全部楼层
61869319@qq.com 发表于 2020-4-17 17:51
例如有道题是问“1+1=?”后台可以设置标准答案为2
这个2是在哪一步设置为标准答案的
temp = input("1+ ...

那你可以去翻Python源代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-17 17:56:32 | 显示全部楼层
8不是被赋值了,而是判断的条件,你输入的数值被赋给guess,“==“是等于符号,不是赋值符号,是用来判断guess的值和8是否相等的。8本身就是个整型数字常量,不需要赋值。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-17 18:00:44 | 显示全部楼层
涉及到python存贮机制问题。

8的话本身不在内存,在你赋值的一瞬间,代表着guess这个标签引用到8这个内存地址。

这也是python万物皆对象的原理。 对于内存地址8来说,这个标签就是他的对象。

小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-17 18:07:06 | 显示全部楼层
luo923746634 发表于 2020-4-17 17:56
8不是被赋值了,而是判断的条件,你输入的数值被赋给guess,“==“是等于符号,不是赋值符号,是用来判断gu ...

是从哪一步设置成用8来判断的呢?
if  guess==8
是上面这一步吗?
或者能请你帮忙把帖子里的代码每一行的作用解释一下吗
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-17 18:08:29 | 显示全部楼层
qiuyouzhi 发表于 2020-4-17 17:56
那你可以去翻Python源代码

我感觉你好像不知道我在问什么  一直这样用你理解的方式来逗趣不好吧?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-17 18:10:06 | 显示全部楼层
61869319@qq.com 发表于 2020-4-17 18:08
我感觉你好像不知道我在问什么  一直这样用你理解的方式来逗趣不好吧?

这个8本来就是一个常量,不需要定义啊
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-17 18:12:10 | 显示全部楼层
heidern0612 发表于 2020-4-17 18:00
涉及到python存贮机制问题。

8的话本身不在内存,在你赋值的一瞬间,代表着guess这个标签引用到8这个内 ...

我...可能没有想的那么复杂  我觉得这个答案应该很简单 而且就在这几行代码里  只是我哪里钻了牛角尖没悟出来
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-17 18:14:20 | 显示全部楼层
我莫名其妙觉得这个很简单的问题变成了哲学家讨论大会
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-17 18:15:37 | 显示全部楼层    本楼为最佳答案   
本帖最后由 heidern0612 于 2020-4-17 18:17 编辑
61869319@qq.com 发表于 2020-4-17 18:12
我...可能没有想的那么复杂  我觉得这个答案应该很简单 而且就在这几行代码里  只是我哪里钻了牛角尖没悟 ...


你这么想:

在你设计这个程序之前,是不是你已经知道8是答案了,但是玩你这个游戏的人不知道答案是什么。

如果guess等于8,是不是下面就没猜的必要了,8已经是答案了,那下面还while,if个什么。

所以只有guess不等于8,也就是说,你猜错的情况下,下面才有while和if等循环。


也就是说:

在你没学那么深的设计之前,你需要提前有个变量,用于把正确答案存起来备用,然后用来判断用户猜的是不是你存的这个答案。

如果你连这个正确答案都没有,用户拿什么去猜?或者说用户猜了一个,你拿什么判断用户输入的是不是对的?

小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-17 18:18:05 | 显示全部楼层
qiuyouzhi 发表于 2020-4-17 18:10
这个8本来就是一个常量,不需要定义啊

我是用哪行代码跟电脑说我想用8这个数字   
if guess == 8:
是这行吗

我就是一个今天刚开始看视频的菜鸟,这个问题应该是很简单的 只是我钻牛角尖了  你试着用这个环境来看一下我的问题

试图找到我们能在一个次元沟通的方法。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-17 18:20:22 | 显示全部楼层
61869319@qq.com 发表于 2020-4-17 18:18
我是用哪行代码跟电脑说我想用8这个数字   
if guess == 8:
是这行吗

对,就是这行
这个东西是每个Python(电脑)都有的。
你是不理解这个8是怎么来的是吗?
这个8就和Python的内置模块一样,自带的。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-4-30 13:10

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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