请选择 进入手机版 | 继续访问电脑版
设为首页收藏本站

Crossin的编程教室

 找回密码
 立即加入
楼主: crossin先生

【Python 第22课】 函数应用示例

[复制链接]

0

主题

0

好友

56

积分

注册会员

Rank: 2

发表于 2017-8-12 22:52:33 |显示全部楼层
from random import randint
Answer=randint(1,100)
totoal=11
left=0
num=0
time=0
well = False
print 'plese input the number you  guess!!!'
while int(num) != Answer:
    while time<totoal :
        num=int(input());  
        time+=1
        left=totoal-time
        if num>Answer:
            print 'too   big,you have['+str(left)+']times'
        elif num<Answer:
            print 'too small,you have['+str(left)+']times'
        elif num==Answer:
            print 'congratulations you get it!'
            time = time+(totoal-time)+1
        else:
            print 'sorry,you have get more then 3 time,can not try again!'
        well = True

先生,这里是我在前面看到一位同学,我进行了一些优化,这个同学一开始不能使这段代码彻底结束,我优化以后,只有回答正确的答案才能结束,但是回答10次以后,却无法结束,修改了几次,都没办法。希望先生能给我一些指点
回复

使用道具 举报

174

主题

45

好友

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

发表于 2017-8-13 12:59:22 |显示全部楼层
枫叶落时 发表于 2017-8-12 22:52
from random import randint
Answer=randint(1,100)
totoal=11

你想想逻辑,这里不是两层循环嵌套,只是一层循环,但要满足两个条件。
while的条件改一下
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

0

主题

0

好友

56

积分

注册会员

Rank: 2

发表于 2017-8-13 21:45:55 |显示全部楼层
from random import randint
Answer  = randint(1,100)
num = 0
time = 0
well = False
print " plese input the number you guess!!"
while num != Answer:
    num = input()
    time += 1


    if num > Answer and time <10:
        print " too big!"


    elif num < Answer and time < 10:
        print "too small"


    elif num == Answer:
        print "congratulations you get it!"


    else :
        print "sorry ,you have get more then 10 time,can not try agani!"
        Answer = num
    well = True
先生,听了你的意见,我成功优化,虽然没有用你23课所教的方法,自己想了一种,跑成功了,非常感谢先生~
回复

使用道具 举报

2

主题

0

好友

60

积分

注册会员

Rank: 2

发表于 2018-2-2 15:37:17 |显示全部楼层
请问老师,您给出的这段实例里,answer=input(),这个括号里面不能添加内容了吧
回复

使用道具 举报

174

主题

45

好友

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

发表于 2018-2-2 18:45:00 |显示全部楼层
wwyy4ever 发表于 2018-2-2 15:37
请问老师,您给出的这段实例里,answer=input(),这个括号里面不能添加内容了吧 ...

可以添加,添加的内容是输入前的提示语
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

2

主题

0

好友

60

积分

注册会员

Rank: 2

发表于 2018-2-5 10:16:41 |显示全部楼层
crossin先生 发表于 2018-2-2 18:45
可以添加,添加的内容是输入前的提示语

我就在括号里写了‘请输入数字’,然后不管输入什么数字都是too big
回复

使用道具 举报

174

主题

45

好友

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

发表于 2018-2-5 14:40:31 |显示全部楼层
wwyy4ever 发表于 2018-2-5 10:16
我就在括号里写了‘请输入数字’,然后不管输入什么数字都是too big

输入的数字不要加引号
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

0

主题

0

好友

4

积分

新手上路

Rank: 1

发表于 2018-2-23 11:14:05 |显示全部楼层
MAC 3.6.4

def isEqual(num1,num2):
    if num1<num2:
        print('too small')
        return False
    if num1>num2:
        print('too big')
        return False
    if num1==num2:
        print('bingo')
        return True

from random import randint
num = randint(1,100)
print ('Guess what I think?')
bingo = False
while bingo == False:
    answer = int(input())
    bingo = isEqual(answer,num)

然后 Run Module
"invalid character in identifier"
最后的num被框红了

不知道该怎么办
回复

使用道具 举报

6

主题

2

好友

654

积分

实习版主

Rank: 7Rank: 7Rank: 7

发表于 2018-2-23 17:31:30 |显示全部楼层
Tmyueee 发表于 2018-2-23 11:14
MAC 3.6.4

def isEqual(num1,num2):

标识符中有无效字符,标红num说明在num附近,刚粘贴你代码试了下,num前的逗号改成英文字符就行了

参考链接 http://blog.csdn.net/yeyue0922/a ... tionNum=6&fps=1
回复

使用道具 举报

0

主题

2

好友

72

积分

注册会员

Rank: 2

发表于 2018-4-5 21:47:39 |显示全部楼层
  1. import random
  2. num=random.randint(1,5)
  3. guess=eval(input('guess what I think?'))
  4. def compare(x,y):
  5.     if x<y:
  6.         print('%d is too small' %x)
  7.     elif x>y:
  8.         print('%d is too big' %x)
  9.     else:
  10.         print('bingo')
  11.     return x==y
  12. while num!=guess:
  13.     compare(guess,num)
  14.     guess=eval(input('guess what I think?'))
  15. else:
  16.     print('bingo')
复制代码
老师您好,有个问题想请教您,感觉最后的else怪怪的,但又不知道,一旦没有这个else,如果在x=y时,print一个bingo
之前一直在贴吧跟您学习,但不知道为啥,被系统永远封禁了,所以转战到这里。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即加入

QQ|手机版|Archiver|Crossin的编程教室 ( 苏ICP备15063769号  

GMT+8, 2024-3-29 19:34 , Processed in 0.025733 second(s), 23 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部