Как я могу получить этот Python код, чтобы заменить все элементы в lst1, которые появляются в строке email_one, на соответствующий элемент индекса в lst2? - PullRequest
0 голосов
/ 09 апреля 2020

В данный момент он заменяет только последний элемент lst1 на соответствующий элемент lst2 («Голод» на «Голод»), но не первый («алгоритмы обучения» и «технология анализа»).


lst1 = ['learning algorithms', 'Famine']
lst2 = ['analysis technology', 'Hunger']

for i in range(len(lst1)):
    if lst1[i] in email_one:
      new_email = email_one.replace(lst1[i], lst2[i])

print(new_email)

И результат печати (new_email) :

Прогресс идет отлично!

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

Каждый месяц мы приближаемся к достижению нашей цели - сделать мир лучше. Голод, чума, война и бедность - все это можно победить силой нашей системы!

До следующего месяца,

1 Ответ

1 голос
/ 09 апреля 2020

Каждый раз, когда вы делаете обновление, вы стираете предыдущие обновления, которые вы сделали, потому что вы изменяете исходную строку (email_one), а не обновленную версию (new_email) и переназначаете new_email на email_one + последнее изменение. Попробуйте это:

new_email = email_one
for i in range(len(lst1)):
    if lst1[i] in email_one:
        new_email = new_email.replace(lst1[i], lst2[i])

Таким образом, вы сохраните изменения, сделанные в new_email.

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