君子好逑 发表于 2020-4-19 21:57:29

输入问题

import random
times=3
secret=random.randint(0,10)
print('-----------woaiyucgongzuoshi------------')
guess=0
print('不妨猜一下小甲鱼现在心里想的是哪个数字:',end='')
while(guess!=secret)and(times>0):
    temp=input()
    print(temp)
   
    while not temp.isdigit():
      temp=input('抱歉,您的输入有误,请输入一个整数:')
guess=int(temp)
tmes=times-1
if guess==secret:
    print("你是小甲鱼肚子里的蛔虫吗")
else:
    if guess>secret:
      print("brother,it's so big")
    else:
      print('small,small')
    if times>0:
      print("再试一次吧",end='')
    else:
      print('机会用光了')
print("游戏结束")
小甲鱼的这个程序的输入为什么会有问题,输入后不能进行判断,无内容显示,再按一次回车后直接提示输入有误

zltzlt 发表于 2020-4-19 22:02:35

本帖最后由 zltzlt 于 2020-4-19 22:09 编辑

试试这样:

import random

times = 3
secret = random.randint(0, 10)
print('-----------woaiyucgongzuoshi------------')
guess = 0
print('不妨猜一下小甲鱼现在心里想的是哪个数字:', end='')
while (guess != secret) and (times > 0):
    temp = input()
    print(temp)

    while not temp.isdigit():
      temp = input('抱歉,您的输入有误,请输入一个整数:')
    guess = int(temp)
    times = times - 1
    if guess == secret:
      print("你是小甲鱼肚子里的蛔虫吗")
    else:
      if guess > secret:
            print("brother,it's so big")
      else:
            print('small,small')
      if times > 0:
            print("再试一次吧", end='')
      else:
            print('机会用光了')
print("游戏结束")

wuqramy 发表于 2020-4-19 22:06:52

本帖最后由 wuqramy 于 2020-4-20 08:25 编辑

唉,这代码就是缩进错误 + 没必要print()再input(),直接input()即可 + time的次数应该是2(如果你想设置3次机会,那第一次输入也算) + 有一处times拼成了tmes + 一些小错误
正确的代码:
import random
times=2
secret=random.randint(0,10)
print('-----------woaiyucgongzuoshi------------')
guess=0
temp = input('不妨猜一下小甲鱼现在心里想的是哪个数字:')
guess=int(temp)
while(guess!=secret)and(times>0):
    while not temp.isdigit():
      temp=input('抱歉,您的输入有误,请输入一个整数:')
    if guess==secret:
      print("你是小甲鱼肚子里的蛔虫吗")
      break
    else:
      if guess>secret:
            print("brother,it's so big")
      else:
            print('small,small')
    if times>0:
      guess = int(input("再试一次吧:"))
      times=times-1
    else:
      print('机会用光了')
print("游戏结束")

wuqramy 发表于 2020-4-19 22:09:01

zltzlt 发表于 2020-4-19 22:02
试试这样:

tmes = times - 1
你没发现他有拼写错误吗

君子好逑 发表于 2020-4-21 13:12:56

wuqramy 发表于 2020-4-19 22:06
唉,这代码就是缩进错误 + 没必要print()再input(),直接input()即可 + time的次数应该是2(如果你想设置3次 ...

谢谢大佬

君子好逑 发表于 2020-4-21 13:14:10

zltzlt 发表于 2020-4-19 22:02
试试这样:

谢谢大佬{:5_106:}
页: [1]
查看完整版本: 输入问题