joy_w 发表于 2021-4-15 17:44:44

EOL while scanning string literal

""""用Pyhon设计第一个游戏""""

temp=input("猜小甲鱼在想哪个数值:")
guess=int(temp)

if guess==8:
    print("猜对啦!")
    print("不过没有奖励哦。")
else:
    print("猜错啦,小甲鱼想的是8!")

print("游戏结束~")


请问各位大神,出现这个问题并在“甲”字上标红,标点改了好几遍还是这样,是为什么呢?

wp231957 发表于 2021-4-15 17:53:38

交互模式下还是py文件方式

yayc_zcyd 发表于 2021-4-15 18:13:42

你第一行多打了两个”   应该这么写
"""用Pyhon设计第一个游戏"""

temp=input("猜小甲鱼在想哪个数值:")
guess=int(temp)

if guess==8:
    print("猜对啦!")
    print("不过没有奖励哦。")
else:
    print("猜错啦,小甲鱼想的是8!")

print("游戏结束~")

lovecnbear 发表于 2021-4-16 00:56:48

第一行引号多打了一对
这是我改进的代码
可以玩5次机会
猜对或者5次机会用完会询问是否继续
print('这是一个猜数字的游戏,一共五次机会,数字范围1到20之间不包含20,''看看你能几次猜中')
while True:#用来判定最后是否还继续玩游戏
    import random#调用random模块
    x = random.randint(1, 20)#生成随机数
    for i in range(5):#设定循环上限5次
      num1=input('猜猜看是几,请输入一个整数:\n')
      while not num1.isdigit():#判定输入的是否为数字
            print(f'只能输入数字,浪费一次机会了,再来一次吧,还剩{4-i}次机会')
            break#中断本层循环,回到游戏开始
      else:
            num = int(num1)
            if num == x:
                print('猜对啦。正确答案是', x)
                break
            elif num < x:
                print('小了,还有', 4 - i, '次机会')
            elif num > x:
                print('大了大了', 4 - i, '次机会')
    answer=input(f'哈哈正确答案是{x}\n还继续玩吗')
    if answer=='y':
      continue#回到while True
    else:
      break#结束while True
print('再见啦')

joy_w 发表于 2021-4-17 08:53:57

yayc_zcyd 发表于 2021-4-15 18:13
你第一行多打了两个”   应该这么写

原来如此!谢谢{:5_109:}

joy_w 发表于 2021-4-17 08:57:20

lovecnbear 发表于 2021-4-16 00:56
第一行引号多打了一对
这是我改进的代码
可以玩5次机会


感谢大神{:5_106:}
页: [1]
查看完整版本: EOL while scanning string literal