возможно ли сделать несколько переборов списка в другом переборе
Суть в том, что я пытаюсь создавать файл, в котором будут генерироваться цены в пределах 50% от цены в другом файле , для замены цены в новом файле не нашел ничего умнее как просто воспользоваться replace, загвоздка в том что, как реализовать переборы, для нормальной построчной замены
for element_new in finaly:
element_new = str(element_new)
for element_old in n2:
element_old = str(element_old)
for element in content:
new_price = element.replace(element_old, element_new)
file.write(new_price)
Ответы (2 шт):
Да, возможно. Но вам нужно не это. Сделайте так:
for element_new, element_old, element in zip(finaly, n1, content):
new_price = element.replace(element_old, element_new);
file.write(new_price);
Если я правильно понял, то вы хотите сделать что-то такое, хотя это и будет очень неоптимально работать:
for element in content:
new_price = element
for element_new,element_old in zip(finaly,n2):
element_new = str(element_new)
element_old = str(element_old)
new_price = new_price.replace(element_old, element_new)
file.write(new_price)
Для того, чтобы советовать что-то более конкретное и оптимальное, надо смотреть на ваши данные.
Скорее всего там можно (и нужно) обойтись без replace и можно предварительно заполнить словарь, через который потом и заменять данные, это будет гораздо быстрее, чем вложенные циклы.