| 
 | 
 
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册  
 
x
 
 本帖最后由 楪祈53409 于 2021-4-16 13:46 编辑  
 
在2016版python教程p5中,我想实现有限次数的循环,定义函数time=time+1,会报错,这样的定义无效。求助!如果不加这一部分内容,代码可以成功运行。原始代码如下: 
{code} 
import random 
secret=random.randint(5,20) 
print('-------------------------姬骑士的末路----------------------------') 
temp = input("你抓到了一个姬骑士,她掌握了重要的情报,你将负责拷问出这些情报。\n现在,你需要输入调教的时间\n请注意:太少无效,太多则会导致人物坏掉而任务失败.\n输入:") 
guss = int(temp) 
print("'咕,杀了我'") 
while ( guss != secret ) : 
    if guss==secret: 
        print("要。。坏掉了。。。求求你,停下。。。我说!所以不要在继续了!") 
        print("已经。。。回不去了。。。。") 
    else: 
        if guss<secret: 
                print("就这?\n我是绝对不会屈服的!") 
        else: 
            if guss>secret: 
                print("阿巴阿巴阿巴.....\n(她已经无法思考,彻底的坏掉了)\n任务失败") 
        temp = input("\n时间回溯,你又获得了一次机会") 
        guss = int(temp) 
else: 
    print("要。。坏掉了。。。求求你,停下。。。我说!所以不要在继续了!") 
    print("’已经。。。回不去了。。。。'\n任务成功") 
 
{/code} 
 
 
而我加循环次数以后的代码是: 
{code} 
import random 
secret=random.randint(5,20) 
print('-------------------------姬骑士的末路----------------------------') 
time=time+1 
temp = input("你抓到了一个姬骑士,她掌握了重要的情报,你将负责拷问出这些情报。\n现在,你需要输入调教的时间\n请注意:太少无效,太多则会导致人物坏掉而任务失败.\n输入:") 
guss = int(temp) 
print("'咕,杀了我'") 
while ( guss != secret ) and ( time < 5 ) : 
    if guss==secret: 
        print("要。。坏掉了。。。求求你,停下。。。我说!所以不要在继续了!") 
        print("已经。。。回不去了。。。。") 
    else: 
        if guss<secret: 
                print("就这?\n我是绝对不会屈服的!") 
        else: 
            if guss>secret: 
                print("阿巴阿巴阿巴.....\n(她已经无法思考,彻底的坏掉了)\n任务失败") 
        temp = input("\n时间回溯,你又获得了一次机会") 
        guss = int(temp) 
else: 
    print("要。。坏掉了。。。求求你,停下。。。我说!所以不要在继续了!") 
    print("’已经。。。回不去了。。。。'\n任务成功") 
 
{/code} 
 
我知道我这个东西各种意义上都不对劲,不过首先我关于代码方面想要求教!到底应该怎么定义迭代函数?
是这样吗? 
- import random
 
  
- secret = random.randint(5,20)
 
 - print('-------------------------姬骑士的末路----------------------------')
 
 - # 这里定义变量用于计算循环次数
 
 - time = 0
 
  
- temp = input("你抓到了一个姬骑士,她掌握了重要的情报,你将负责拷问出这些情报。\n现在,你需要输入调教的时间\n请注意:太少无效,太多则会导致人物坏掉而任务失败.\n输入:")
 
 - guss = int(temp)
 
 - print("'咕,杀了我'")
 
 - while ( guss != secret ) and ( time < 5 ) :
 
 -     if guss == secret:
 
 -         print("要。。坏掉了。。。求求你,停下。。。我说!所以不要在继续了!")
 
 -         print("已经。。。回不去了。。。。")
 
 -     else:
 
 -         if guss < secret:
 
 -                 print("就这?\n我是绝对不会屈服的!")
 
 -         else:
 
 -             if guss > secret:
 
 -                 print("阿巴阿巴阿巴.....\n(她已经无法思考,彻底的坏掉了)\n任务失败")
 
 -         temp = input("\n时间回溯,你又获得了一次机会")
 
 -         guss = int(temp)
 
 -     # 本次循环完成,计数器 +1
 
 -     time += 1
 
 - else:
 
 -     print("要。。坏掉了。。。求求你,停下。。。我说!所以不要在继续了!")
 
 -     print("’已经。。。回不去了。。。。'\n任务成功")
 
  复制代码 
 
 
 |   
 
 
 
 |