Crossin的编程教室

标题: 按照公众号里面第22课的内容做的练习 总是做不对 [打印本页]

作者: 冬天吃冰棍儿    时间: 2018-2-25 21:19
标题: 按照公众号里面第22课的内容做的练习 总是做不对
微信图片_20180225211708.png
def isEqual(a,b):
    if a < b:
        print('too small')
        return False#??我的return 和false的颜色是一样的?和教程不同是为什么呢
    if a>b:
        print('too big')
        return False;
    if a==b:
        print('bingo')
        return True;

from random import randint
num = randint(1, 100)
print ('Guess what I think?')
bingo = False
while bingo == False:
   answer = input()#注意!!这里input的类型是str 不可以直接和数字进行比较
   s=int(answer)#解决办法就是将字符型转换成整型
   bingo = isEqual(num, s)



作者: crossin先生    时间: 2018-2-26 14:10
颜色是idle的问题,代码没错,你注释的分析也对
作者: 冬天吃冰棍儿    时间: 2018-2-26 14:15
crossin先生 发表于 2018-2-26 14:10
颜色是idle的问题,代码没错,你注释的分析也对

好哒 谢谢老师
作者: jinbohuan    时间: 2018-3-23 16:56
我认为是你的
while bingo == False:
问题
应该是
while bingo == 'False':
判断你存的 bingo这个值是不是 字符串'False' 而不是判断他是不是个bool值 False
作者: huangym_o    时间: 2019-3-8 16:14
本帖最后由 huangym_o 于 2019-3-8 16:27 编辑

参照【Python 22】 函数应用示例([url]https://bbs.crossincode.com/forum.php?mod=viewthread&tid=908&highlight=%E7%AC%AC22%E8%AF%BE)中[/url]第5楼catherinemic的代码:将13/17行中的num需要改为num1,16行answer=input()改为answer=int(input())就可以了。





欢迎光临 Crossin的编程教室 (https://bbs.crossincode.com/) Powered by Discuz! X2.5