鱼C论坛

 找回密码
 立即注册
查看: 1733|回复: 2

[已解决]关于try except的一个问题

[复制链接]
发表于 2017-8-25 15:30:21 | 显示全部楼层 |阅读模式

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

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

x
  1.     print ('1、开始游戏\n2、作者介绍\n3、退出游戏')
  2.     xuanze1 = input('')
  3.     xuanze = int(xuanze1)
  4.     if xuanze == 1:
  5.         while True:
  6.             daan = random.randint(1,10)
  7.             shuzi1 = input('猜一下正确的数字是几:')
  8.             try:
  9.                 if type(eval(shuzi1))==int:
  10.                     guess = int(shuzi1)
  11.                     if guess == daan:                     
  12.                         print ('猜对了,你用了'+ n +'次机会')
  13.                     while guess != daan:                    
  14.                         print ('猜错了,你已经用了'+ n +'次机会')
  15.                         if guess > daan:
  16.                             print ('猜大了,你已经用了'+ n +'次机会')
  17.                         else:                        
  18.                             print ('猜小了,你已经用了'+ n +'次机会')
  19.                         shuzi = input('再猜一次吧:')
  20.                         guess = int(shuzi1)
  21.                         if guess == daan:                     
  22.                             print ('猜对了,你已经用了'+ n +'次机会')
  23.                     print ('游戏结束!')
  24.                     xuanze2 = input('是否继续游戏?\n输入Y/y即可继续\
  25. 游戏\n其他任意按键返回主菜单')
  26.                     #代码换行插入\即可,如上
  27.                     if xuanze2 == 'Y':
  28.                         pass
  29.                     elif xuanze2 =='y':
  30.                         pass
  31.                     else:
  32.                         break      
  33.             except:
  34.                 print ('输入类型有误,请输入整数')
复制代码



这是我写的里面一部分,输入数字之后会直接输出输入类型有误,然而我把代码中输出部分的     你已经用了'+ n +'次机会    全部删除之后,又能够正常判断了,求问这是为什么?怎么解决?

本意是想赋值一个n,然后n += 1,计数并且一起输出了猜了多少次的
最佳答案
2017-8-25 16:14:36
问题就在几个print函数,'猜对了,你用了'+ n +'次机会'----这里是字符串+整数+字符串,当然会报错了,出错后就转到except了。改为print ('猜对了,你用了'+str(n) +'次机会') 或 print ('猜对了,你用了', n ,'次机会')
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2017-8-25 16:14:36 | 显示全部楼层    本楼为最佳答案   
问题就在几个print函数,'猜对了,你用了'+ n +'次机会'----这里是字符串+整数+字符串,当然会报错了,出错后就转到except了。改为print ('猜对了,你用了'+str(n) +'次机会') 或 print ('猜对了,你用了', n ,'次机会')
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2017-8-25 20:59:36 | 显示全部楼层
冬雪雪冬 发表于 2017-8-25 16:14
问题就在几个print函数,'猜对了,你用了'+ n +'次机会'----这里是字符串+整数+字符串,当然会报错了,出错 ...

谢谢谢谢,非常感谢,百度的用法然后自己误用了,一直没意识到,感谢解惑
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-3-1 20:54

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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