鱼C论坛

 找回密码
 立即注册
查看: 1576|回复: 9

[已解决]第四讲课后习题有些不明白的地方

[复制链接]
发表于 2017-12-30 22:47:18 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 丶逗比 于 2017-12-30 23:19 编辑

import random
times = 3
secret = random.randint(1,10)
guess=0
print('--------------------小游戏--------------------')
temp = input('猜一下我现在想的是数字几:',end=' ')
guess = int(temp)
while (guess != secret) and (times > 0):
    temp = input('猜错了,再试一下吧:')
    guess = int(temp)
    times =times - 1
    if guess == secret:
        print('我嘞个去,这都行!')
        print('不过没啥用~.~')
    else:
        if guess > secret:
            print('是不是有点大啊~')
        else:
            print('我觉得可能小了~')
        if times > 0:
            print('再试一次?',end='')
        else:
            print('机会只有三次,全用光了T_T')
print('游戏结束喽!')


请问为什么不能在while前面对guess赋值?第六第七行好像不行。错误提示:Traceback (most recent call last):
  File "G:\python\python练习\3章小游戏\猜数字改进0.py", line 6, in <module>
    temp = input('猜一下我现在想的是数字几:',end=' ')
TypeError: input() takes no keyword arguments,我不是太理解。
还有就是小甲鱼老师end为什么用在这两个地方?而且用意是什么我也不太理解,没看懂。小白一位请各位大佬帮忙解答。谢谢
最佳答案
2017-12-30 23:52:00
没vip,不知道题是啥。end=' '的意思是打印后不换行,加个空格。默认如果没有end=' '的话是换行的
print("i love you")
print("i love you")

print("i love you",end=‘  ’ )
print("i love you",end=‘  ’ ) 你分别试下就知道了。
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2017-12-30 23:08:10 | 显示全部楼层
本帖最后由 丶逗比 于 2017-12-30 23:11 编辑

还想问一下,我看小甲鱼老师说前面要给guess附一个绝对不等于答案的值,为什么需要这样做?这样做有什么含义吗?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-12-30 23:42:58 From FishC Mobile | 显示全部楼层
各位大佬,用的3,win64的,能帮小白一把吗?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-12-30 23:52:00 | 显示全部楼层    本楼为最佳答案   
没vip,不知道题是啥。end=' '的意思是打印后不换行,加个空格。默认如果没有end=' '的话是换行的
print("i love you")
print("i love you")

print("i love you",end=‘  ’ )
print("i love you",end=‘  ’ ) 你分别试下就知道了。

评分

参与人数 1荣誉 +5 鱼币 +3 贡献 +1 收起 理由
丶逗比 + 5 + 3 + 1

查看全部评分

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

使用道具 举报

 楼主| 发表于 2017-12-31 01:08:09 From FishC Mobile | 显示全部楼层
mud_king 发表于 2017-12-30 23:52
没vip,不知道题是啥。end=' '的意思是打印后不换行,加个空格。默认如果没有end=' '的话是换行的
print(" ...

谢谢,明天我试下。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-12-31 10:48:00 | 显示全部楼层
mud_king 发表于 2017-12-30 23:52
没vip,不知道题是啥。end=' '的意思是打印后不换行,加个空格。默认如果没有end=' '的话是换行的
print(" ...

end‘ ’懂了,请问前面的问题该怎么解释?这是小甲鱼老师的代码:
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("游戏结束,不玩啦^_^")
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-12-31 12:35:36 | 显示全部楼层
懂了懂了。input里面是没有end参数的
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-12-31 12:36:48 | 显示全部楼层
跑了一下,有几个问题:
1:input里面不能有end=“ ”,input是外部输入一个东西,括号内只能有描述性语句(引号引起来的),逗号和end=‘’它报错
     print是可以用end=‘’的
2:如果在while前面对guess进行赋值,那么guess后面的input(也就是外部输入操作)只能输入一次,如果guess在while内部,while循环一次,就能输入一次。(程序要求猜错了还能再猜,只能猜一次那是不合乎程序要求)
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-1-1 00:49:07 From FishC Mobile | 显示全部楼层
mud_king 发表于 2017-12-31 12:36
跑了一下,有几个问题:
1:input里面不能有end=“ ”,input是外部输入一个东西,括号内只能有描述性语句 ...

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

使用道具 举报

发表于 2018-1-1 15:17:30 | 显示全部楼层
丶逗比 发表于 2018-1-1 00:49
懂了懂了,谢谢谢谢

客气,互相学习
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-10-11 03:19

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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