Как взять пользовательский ввод и поместить его в новый массив внутри массива в Python? - PullRequest
1 голос
/ 21 апреля 2019

Я пытаюсь поместить пользовательский ввод (просто список целых) в список, который уже существует с одним элементом в нем. Я не уверен, возможно ли иметь список, запущенный из одного элемента в уже существующем списке. Возможно, со временем добавим больше элементов в уже существующий список

Код ниже:

days = ["Monday"]

days[0] = [int(x) for x in input("Please enter your schedule: ").split()]

print(days)

Я ожидал, что результаты дадут мне список в списке, но фактический результат был:

days[0] = [int(x) for x in input("Please enter your schedule: ").split()]
ValueError: invalid literal for int() with base 10: '1000,'

1 Ответ

1 голос
/ 21 апреля 2019

Вы можете сделать это:

days = ["Monday"]    
days.append( [int(x) for x in input("Please enter your schedule: ").split()] )
print(days)

Это даст вам ["Monday", [1000, 2000, 3000]], если вы предоставили 1000 2000 3000 из командной строки.

Если вы сделаете это:

days = ["Monday"]

input_data = input("Please enter your schedule: ")
split_data = input_data.split()
for item in split_data:
    days.append(item)
print(days)

Вы получите ["Monday", 1000, 2000, 3000]

Или вы можете использовать словарь так:

days = {}
days["Monday"] = [int(x) for x in input("Please enter your schedule: ").split()]
print(days)

, чтобы получить {'Monday': [1000, 2000, 3000]}

...