Как вставить элементы в несколько списков в python?

У меня есть список списков

ls = [[1649534580000, 165.76, 165.86, 165.57, 165.57, 27.45, 10], [1649534640000, 165.6, 165.69, 165.42, 165.46, 44.1, 23]]

в каждом из подсписков я хотел бы вставить имя в конце, например...

names = ['Dave', 'Bob']

ls = [[1649534580000, 165.76, 165.86, 165.57, 165.57, 27.45, 10, 'Dave'], [1649534640000, 165.6, 165.69, 165.42, 165.46, 44.1, 23, 'Bob']]

какой самый простой способ сделать то, что можно масштабировать, когда список списков становится очень большим?

Вы пытались использовать цикл, чтобы внести изменения в каждый список в списке списков?

Karl Knechtel 09.04.2022 22:41

где хранятся имена?

Vishwa Mittar 09.04.2022 22:44

@DaveTheRave, пожалуйста, взгляните на: stackoverflow.com/help/on-topic

Lucas Roberts 09.04.2022 22:45
Анализ настроения постов в Twitter с помощью Python, Tweepy и Flair
Анализ настроения постов в Twitter с помощью Python, Tweepy и Flair
Анализ настроения текстовых сообщений может быть настолько сложным или простым, насколько вы его сделаете. Как и в любом ML-проекте, вы можете выбрать...
7 лайфхаков для начинающих Python-программистов
7 лайфхаков для начинающих Python-программистов
В этой статье мы расскажем о хитростях и советах по Python, которые должны быть известны разработчику Python.
Установка Apache Cassandra на Mac OS
Установка Apache Cassandra на Mac OS
Это краткое руководство по установке Apache Cassandra.
Сертификатная программа "Кванты Python": Бэктестер ансамблевых методов на основе ООП
Сертификатная программа "Кванты Python": Бэктестер ансамблевых методов на основе ООП
В одном из недавних постов я рассказал о том, как я использую навыки количественных исследований, которые я совершенствую в рамках программы TPQ...
Создание персонального файлового хранилища
Создание персонального файлового хранилища
Вы когда-нибудь хотели поделиться с кем-то файлом, но он содержал конфиденциальную информацию? Многие думают, что электронная почта безопасна, но это...
Создание приборной панели для анализа данных на GCP - часть I
Создание приборной панели для анализа данных на GCP - часть I
Недавно я столкнулся с интересной бизнес-задачей - визуализацией сбоев в цепочке поставок лекарств, которую могут просматривать врачи и...
2
3
42
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Попробуйте что-то вроде этого:

ls = [[1649534580000, 165.76, 165.86, 165.57, 165.57, 27.45, 10], [1649534640000, 165.6, 165.69, 165.42, 165.46, 44.1, 23]]
new_vals = ['Dave', 'Bob']

# Create a function
# Accept existing list and new values (list) as arguments
def add_new_elems(_my_list, _new_vals):
    assert len(_my_list) == len(new_vals), 'Length of existing list and new values is not same'
    # Utilize list comprehension to append data
    [_my_list[i].append(_new_vals[i]) for i in range(len(_my_list))]
    return _my_list


print(add_new_elems(ls, new_vals))
######
[[1649534580000, 165.76, 165.86, 165.57, 165.57, 27.45, 10, 'Dave'], [1649534640000, 165.6, 165.69, 165.42, 165.46, 44.1, 23, 'Bob']]

Вы не должны использовать списки для побочных эффектов. Вы выделяете список без причины и просто выбрасываете его.

Mark 09.04.2022 23:07

@Mark: я не думал о побочных эффектах. Спасибо, я прочитаю побочные эффекты.

Ashish Samarth 09.04.2022 23:12
Ответ принят как подходящий

Как правило, если вы хотите добавить элемент в список внутри списка, вы можете просто зациклить его и append(item) в (конец) списка.

for item in ls:
    item.append('Dave')

Поскольку вы пытаетесь работать с двумя списками одновременно, вы можете использовать встроенную функцию молния.

ls = [[1649534580000, 165.76, 165.86, 165.57, 165.57, 27.45, 10], [1649534640000, 165.6, 165.69, 165.42, 165.46, 44.1, 23]]
names = ['Dave', 'Bob']
for list_item, name in zip(ls, names):
    list_item.append(name)

Это работает со списками одинаковой длины. Если есть риск, что ваши списки имеют разный размер, попробуйте использовать ответ на этот вопрос.

Благодарю. Я отредактировал вопрос, я не пытаюсь сопоставить 2 списка одинаковой длины. Мой реальный жизненный сценарий представляет собой очень длинный список списков, к каждому из которых я хочу добавить имя.

DaveTheRave 09.04.2022 22:58

@DaveTheRave Если имя такое же, все, что вам нужно сделать, это append для каждого списка (я обновил ответ этим решением). Или вы работаете с разными размерами списков?

Tudor Amariei 09.04.2022 23:14

Другие вопросы по теме