Я не знаю, как получить ввод в зависимости от выбора пользователя.Т.е. «Сколько цифр вы хотите ввести?»если ответ 5, то мой массив имеет 5 пробелов для 5 целых чисел в одной строке, разделенных пробелом.
num = []
x = int(input())
for i in range(1, x+1):
num.append(input())
Верхний код работает, однако ввод делится на ввод (следующая строка).Т.е.:
2
145
1278
Я хочу получить:
2
145 1278
Я был бы признателен за помощь.
РЕДАКТИРОВАТЬ:
x = int(input())
while True:
attempt = input()
try:
num = [int(val) for val in attempt.split(" ")]
if len(num)== x:
break
else:
print('Error')
except:
print('Error')
Это похоже на работу.Но почему я получаю сообщение об ошибке «Превышен лимит памяти»?
РЕДАКТИРОВАТЬ: какой бы метод я ни использовал, я получаю ту же проблему.
x = int(input())
y = input()
numbers_list = y.split(" ")[:x]
array = list(map(int, numbers_list))
print(max(array)-min(array)-x+1)
или
x = int(input())
while True:
attempt = input()
try:
num = [int(val) for val in attempt.split(" ")]
if len(num)== x:
break
else:
print('Error')
except:
print('Error')
array = list(map(int, num))
print(max(array)-min(array)-x+1)
или
z = int(input())
array = list(map(int, input().split()))
print(max(array)-min(array)-z+1)