Однострочные входы для списка в Python 3 - PullRequest
0 голосов
/ 10 октября 2019

Есть ли какой-нибудь способ взять заданное количество множественных входов для списка в Python 3.7?

Я пробовал это:

MyList=[int(x) for x in input().split(" ",N)]

, когда N - это число входов, которое я хочу. но всякий раз, когда я пытаюсь запустить свой код, я получаю сообщение об ошибке:

MyList=[int(x) for x in input().split(" ",N)]
File "<string>", line 1
1 2 3 4 5 6 7
  ^
SyntaxError: invalid syntax

Ожидаемый ввод: -

Предположим, N = 7,

1 2 3 45 6 7

Это должно сделать его частью списка

MyList = [1,2,3,4,5,6,7]

1 Ответ

0 голосов
/ 10 октября 2019

Не используйте аргумент N для split. Если на входе больше элементов, чем это, остальные будут объединены в последнем элементе списка. Но это не будет действительным числом, поэтому вы получите сообщение об ошибке при попытке преобразовать его в int.

. Если вам нужны только первые N элементы ввода, используйтефрагмент списка после разбиения.

MyList=[int(x) for x in input().split(" ")[:N]]

Похоже, вы используете Python 2.x, поэтому вам нужно использовать raw_input() вместо input(). См. Ошибка input () - NameError: имя '...' не определено .

MyList=[int(x) for x in raw_input().split(" ")[:N]]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...