Как напечатать определенные элементы списка в Python? - PullRequest
0 голосов
/ 12 сентября 2018

Я пытаюсь напечатать n-е значение списка, в данном случае целое число.Однако каждый раз, когда я получаю весь список как вывод:

[1, 2, 3]

из этого кода:

numbers1 = []
numbers1.insert(0, list(map(int, input().split(" "))))


print(numbers1[0])

Что я здесь не так делаю?

Не знаюпонять, почему не печатается первый элемент numbers1 [0].

1 Ответ

0 голосов
/ 12 сентября 2018

Вы вставляете список в список, чтобы ваш список действительно выглядел следующим образом:

[ [1, 2, 3] ]

То, что вы хотите, может быть достигнуто путем:

numbers1 = list(map(int, input().split(" ")))

или

numbers1.extend(list(map(int, input().split(" "))))

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

userInput = input()
numbers1.extend( [int(s) for s in userInput.split(" ")] )

Этот код делает то же самое, но в качестве понимания списка, что позволяет избежать вызова к map и вызова к list, уменьшая накладные расходы при улучшении читаемости.Это тоже более питонское ИМХО.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...