鱼C论坛

 找回密码
 立即注册
查看: 867|回复: 12

请问一下我是什么地方写错了吗?谢谢

[复制链接]
发表于 2019-5-6 11:17:11 | 显示全部楼层 |阅读模式

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

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

x
我刚刚入门第二天,今天写了个小小程序,但是运行提示有错,应该是语法错误。我找不错来错误在哪儿,望大家指教一下,谢谢。

暂时没有上传图片的权限,只能把代码复制在帖子里:

i = 3
guess = input('请输入你猜的数字:')
temp = int(guess)
while i :
    if guess == 8 :
        break
        print('恭喜你猜对了')
    guess = int(input('你猜错了,请重新输入:')
    i = i - 1
print('恭喜你猜对了!')
print(i)


提示:invalid syntax 错误
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2019-5-6 11:19:14 | 显示全部楼层
本帖最后由 percy818 于 2019-5-6 11:25 编辑

我重新修改了一下,还是有错:

i = 3
guess = input('请输入你猜的数字:')
temp = int(guess)
while i :
    if temp == 8 :
        break
        print('恭喜你猜对了')
    temp = int(input('你猜错了,请重新输入:')
    i = i - 1
print('谢谢参与,欢迎下次再来!')
print(i)
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-5-6 11:19:56 | 显示全部楼层
错误再哪个列  主要关注全角字符啥的  还有严格的缩进
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-5-6 11:25:10 | 显示全部楼层
wp231957 发表于 2019-5-6 11:19
错误再哪个列  主要关注全角字符啥的  还有严格的缩进

你好,是在第9行,i 开始
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-5-6 11:25:22 | 显示全部楼层
本帖最后由 jackz007 于 2019-5-6 11:34 编辑
  1. i = 3
  2. while i :
  3.     guess = int(input('请输入你猜的数字:'))
  4.     if guess == 8 :
  5.         print('恭喜你猜对了')
  6.         break
  7.     else:
  8.         i = i - 1
  9.         if i > 0:
  10.             print('你猜错了,请重新输入:')
  11.         else:
  12.             print('你猜错了,机会用完了。')
  13. print('Game over.')
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-5-6 11:26:57 | 显示全部楼层

谢谢,但是我想知道一下,我的问题是在哪儿?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-5-6 11:29:04 | 显示全部楼层

else:
            print('你猜错了,机会用完了。')
下面是不是还要加一个break,不然一直猜错会一直循环
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2019-5-6 11:32:22 | 显示全部楼层
本帖最后由 jackz007 于 2019-5-6 11:35 编辑
percy818 发表于 2019-5-6 11:26
谢谢,但是我想知道一下,我的问题是在哪儿?

  1. i = 3
  2. guess = input('请输入你猜的数字:')     # 问题1,键盘输入放在循环外面,输入不统一
  3. temp = int(guess)
  4. while i :
  5.     if temp == 8 :
  6.         break                         # 问题2,break 位置放错,答案正确的时候无法执行后面的语句
  7.         print('恭喜你猜对了')          # 问题2,break 位置不合适,导致此语句永远无法执行
  8.     temp = int(input('你猜错了,请重新输入:')
  9.     i = i - 1
  10. print('谢谢参与,欢迎下次再来!')
  11. print(i)
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2019-5-6 11:33:58 | 显示全部楼层

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

使用道具 举报

发表于 2019-5-6 11:36:54 | 显示全部楼层
percy818 发表于 2019-5-6 11:29
else:
            print('你猜错了,机会用完了。')
下面是不是还要加一个break,不然一直猜错会一直 ...

    你说的很对,只要把 while True: 改成 while i: 就可以解决此问题,我的代码已经做了修正
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-5-7 16:40:10 | 显示全部楼层
temp = int(input('你猜错了,请重新输入:')
小括号  也少了一个
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-5-8 14:08:03 | 显示全部楼层
percy818 发表于 2019-5-6 11:29
else:
            print('你猜错了,机会用完了。')
下面是不是还要加一个break,不然一直猜错会一直 ...

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

使用道具 举报

发表于 2019-5-9 12:56:45 | 显示全部楼层
本帖最后由 破月霜华 于 2019-5-9 12:58 编辑

break要放到print("恭喜您猜对了")下面
我写的猜数字,你看看,一起学习
  1. g = 55
  2. while True:
  3.     s = int(input("猜猜我想数字是什么:"))
  4.     if s == g:
  5.         print("猜对啦")
  6.         break
  7.     elif s > g:
  8.         print("大了大了")
  9.     else:
  10.         print("小了小了")
  11.     print("再来一次")
  12. print("游戏结束")
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-1-15 15:25

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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