#list #python-2.7 #input #output
Вопрос:
myint = []
Я хочу, чтобы в этом списке вводилось только целое число, а если нет, то ввод недопустим и создаст другой код, в котором будет написано:» {} не является целым числом. Попробуйте еще раз.» но я, кажется, не знаю, как это сделать, прошло уже 3 часа
while 1: myint1 = input("Enter an integer: ") myint2 = list(map(int, myint)) myint2.sort(reverse=True) myint3 = myint2.isInteger() if myint1 == "": gt;when press enter the code ends and show the sorted list print(f"sorted list: {myint2}") break myint.append(myint1) # Python # List # Input # Invalid code
Ответ №1:
Вы можете проверить, вводит ли пользователь число, попытавшись преобразовать ввод в int. Затем вы можете использовать try, кроме как для отправки сообщения об ошибке, если они не вводят int. Смотреть ниже:
list = [] # create list while True: userInput = input("Enter a number: ") # user enters something try: number = int(userInput) # try to change the input to a number list.append(number) # if successful then append it except: print("Thats not a number!") # if it doesnt work print userInput = input("Enter a number: ") # and get them to re-enter print(list)
Комментарии:
1. но как мне сделать так, чтобы при нажатии клавиши enter программа завершалась?
2. Теперь все в порядке, я все понял. Спасибо за помощь, чувак, большая помощь
Ответ №2:
2
mylist = [] while True: myinput = input("Enter an integer: ") if myinput == "": mylist.sort(reverse=True) print(f"nsorted list: {mylist}") break try: number = int(myinput) mylist.append(number) except: print(f"{myinput} is not an integer. Try again: ") myinput = input("Enter an integer: ") number = int(myinput) mylist.append(number)