Изменить элементы списка на основе другого спискаPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Изменить элементы списка на основе другого списка

Сообщение Anonymous »

У меня есть два списка, которые выглядят -< /p>
list_a = [('gfhr_10_dfrght_sl', None, None), ('gfhr_11_dfrght_sl', None, None), ('mnop_yxt_done', None, None), ('mnop_yxt_gd', None, None), ('frdf_yxty_syn', None, None), ('ABC_XYZ1', 2, 0), ('ABC_XYZ2', 2, 0), ('ABC_XYZ3', 2, 0), ('ABC_XYZUL', 2, 0), ('ABC_JKL1', 1, 0), ('ABC_JKL2', 1, 0)]

list_b = ['ABC_XYZ1', 'ABC_XYZ2', 'ABC_XYZ3', 'ABC_XYZUL', 'mnop_yxt_done', 'mnop_yxt_gd', 'frdf_yxty_syn', 'ABC_JKL1', 'ABC_JKL2', 'DFG_OUT2_ATTgd', 'UHBCB_DFG_nvbgh']
< /code>
Я хочу aild_c, который выглядит как -< /p>
list_c = ['(2-0) ABC_XYZ1', ' (2-0) ABC_XYZ2', '(2-0) ABC_XYZ3', '(2-0) ABC_XYZUL', 'mnop_yxt_done', 'mnop_yxt_gd', 'frdf_yxty_syn', '(2-0) ABC_JKL1', '(2-0) ABC_JKL2', 'DFG_OUT2_ATTgd', 'UHBCB_DFG_nvbgh']
< /code>
В основном он должен заменить элементы в list_b из элементов и соответствующий индекс, которые присутствуют в list_a. У меня есть этот код -< /p>
for i in list_b:
for j in list_a:
if (i == j[0]) and (j[1] != 'None'):
list_c.append(f"({j[1]}-{j[2]}) {i}")
else:
list_c.append(i)
list_c = list(dict.fromkeys(list_c))
print(list_c)
< /code>
Я получаю этот вывод вместо этого -< /p>
['ABC_XYZ1', '(2-0) ABC_XYZ1', 'ABC_XYZ2', '(2-0) ABC_XYZ2', 'ABC_XYZ3', '(2-0) ABC_XYZ3', 'ABC_XYZUL', '(2-0) ABC_XYZUL', 'mnop_yxt_done', '(None-None) mnop_yxt_done', 'mnop_yxt_gd', '(None-None) mnop_yxt_gd', 'frdf_yxty_syn', '(None-None) frdf_yxty_syn', 'ABC_JKL1', '(1-0) ABC_JKL1', 'ABC_JKL2', '(1-0) ABC_JKL2', 'DFG_OUT2_ATTgd', 'UHBCB_DFG_nvbgh']
< /code>
снова в моем коде также добавляет тот же элемент. Как мне просто получить это один раз?

Подробнее здесь: https://stackoverflow.com/questions/795 ... other-list
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»