游子学习 发表于 2021-2-10 13:29:04

新手学python 变量的区分

import random
times = 3
secret = random.randint(1,10)
print('------------------我爱鱼C工作室------------------')
# 这里先给guess赋值(赋一个绝对不等于secret的值)
guess = 0
# print()默认是打印完字符串会自动添加一个换行符,end=" "参数告诉print()用空格代替换行
# 嗯,小甲鱼觉得富有创意的你应该会尝试用 end="JJ"?
print("不妨猜一下小甲鱼现在心里想的是哪个数字:", end=" ")
while (guess != secret) and (times > 0):
    temp = input()
    guess = int(temp)
    times = times - 1 # 用户每输入一次,可用机会就-1
    if guess == secret:
      print("我草,你是小甲鱼心里的蛔虫吗?!")
      print("哼,猜中了也没有奖励!")
    else:
      if guess > secret:
            print("哥,大了大了~~~")
      else:
            print("嘿,小了,小了~~~")
      if times > 0:
            print("再试一次吧:", end=" ")
      else:
            print("机会用光咯T_T")
print("游戏结束,不玩啦^_^")

新手刚学谢谢大家帮助
第一个问题:guess 为什么赋值不能等于secret 那guess是必要赋值0还是也可以赋值别的比如11 ,看了课后作业但是没解释为什么 对于我这种0基础编程小白 实在不解
第二个问题: 开头 导入其他模块我能理解 times 还有secret 这两个 因为英文意思而选着这两个做变量名还是这种类似的编程 都需要这两个固定的变量名 我不是很理解
第三个问题: temp = input() 跟第二个问题一样这个变量也是因为英文的意思 起的还是 固定的, 现在对于变量 本来清晰但是越学越感觉模糊,可能是我不会英语 基本每个英语单词都要查一遍翻译,
有没有大神 给上面编程 所用到 变量 都能解释一下 对于小白的方式。我现在对于一些英语变量很头疼不理解

Daniel_Zhang 发表于 2021-2-10 13:29:05

第一个问题:guess 为什么赋值不能等于secret 那guess是必要赋值0还是也可以赋值别的比如11 ,看了课后作业但是没解释为什么 对于我这种0基础编程小白 实在不解
有没有注意到 while 循环里面的 guess != secret
guess 理论上可以初始化为任意的除了 random.randint(1,10) 的取值范围外的值。假如你初始化 guess 为取值范围内的值,比如2,那么有可能存在secret恰好等于 2 的情况,也就是不需要猜就直接正确了
之所以设置为 0,是因为这是一个习惯,仅此而已,也有些人会设置为 -1

第二个问题: 开头 导入其他模块我能理解 times 还有secret 这两个 因为英文意思而选着这两个做变量名还是这种类似的编程 都需要这两个固定的变量名 我不是很理解
这个问题小甲鱼应该是在视频中有提到的,理论上你可以用任何名字来命名(除了数字开头的名字),但是如果我用 t 来表示 机会次数,你能一眼看出 t 代表的是什么东西吗?反而命名为 times 的话,一目了然,啊,是机会次数的意思,方便自己或其他人的后期代码维护

第三个问题: temp = input() 跟第二个问题一样这个变量也是因为英文的意思 起的还是 固定的, 现在对于变量 本来清晰但是越学越感觉模糊,可能是我不会英语 基本每个英语单词都要查一遍翻译,
有没有大神 给上面编程 所用到 变量 都能解释一下 对于小白的方式。我现在对于一些英语变量很头疼不理解
凡是命名都是自定义的,只要能确保别人能够理解你的意思就可以了

游子学习 发表于 2021-2-10 14:41:45

你好我想在问下temp 我看英文翻译是温度, 那为啥会用这个变量呢,

游子学习 发表于 2021-2-10 14:42:48

Daniel_Zhang 发表于 2021-2-10 13:29
有没有注意到 while 循环里面的 guess != secret
guess 理论上可以初始化为任意的除了 random.randint(1 ...


你好我想在问下temp 我看英文翻译是温度, 那为啥会用这个变量呢,

Daniel_Zhang 发表于 2021-2-10 15:00:45

游子学习 发表于 2021-2-10 14:42
你好我想在问下temp 我看英文翻译是温度, 那为啥会用这个变量呢,

temperature 才是温度的意思

temp 怎么说呢,就是临时的意思,其实就是临时用它来过渡一下

相当于获取 input() 的值也就是用户输入

然后强制转换成 int 类型并且传递给变量 guess

Daniel_Zhang 发表于 2021-2-10 15:05:33

游子学习 发表于 2021-2-10 14:42
你好我想在问下temp 我看英文翻译是温度, 那为啥会用这个变量呢,

讲真的,英语不会的话,确实是挺难理解的,英语是国际通用语言,使用人群大,所以基本上大多数的编程语言都是英文编写的

不过也不需要太担心,基本上一些基础英语就足够了,认识基础的几个单词

_2_ 发表于 2021-2-10 20:30:16

游子学习 发表于 2021-2-10 14:42
你好我想在问下temp 我看英文翻译是温度, 那为啥会用这个变量呢,

这属于约定俗成的命名规则,虽然有些变量是通过其用处进行命名的(取字面意思),但是有些变量(例如 temp, a, b等)其实只是用来给这个变量命个名,给每个没有太大意义的变量是很头疼的{:10_266:}

游子学习 发表于 2021-2-10 20:57:56

Daniel_Zhang 发表于 2021-2-10 15:05
讲真的,英语不会的话,确实是挺难理解的,英语是国际通用语言,使用人群大,所以基本上大多数的编程语言 ...

嗯,十分谢谢,会一直坚持学习的。

游子学习 发表于 2021-2-10 20:58:41

_2_ 发表于 2021-2-10 20:30
这属于约定俗成的命名规则,虽然有些变量是通过其用处进行命名的(取字面意思),但是有些变量(例如 temp,...

嗯,我大概懂了,万分谢谢。
页: [1]
查看完整版本: 新手学python 变量的区分