Здравствуйте, у меня есть список десятичных знаков, которые я преобразовал в строку, чтобы иметь возможность менять точки для запятых. Но с «заменить» это не позволяет мне внести изменения, я делаю это так:
for i in range(len(UCL)): #UCL de corte
UCL[i].replace(".",",")
print(UCL[i])
Исходный список UCL имеет вид:
['2.363636368', '2.17391304', '3.875', '2.282828286', '2.383838386', '2.616161618', '2.363636368', '4.85', '4.75', '2.282828289', '2.616161618', '0.666666666', '3.0', '3.272727272', '2.434343439', '0.666666666', '0.666666666', '2.538461538', '0.666666666', '3.875', '2.616161618', '2.393939396', '0.666666666', '0.666666666', '0.666666666', '0.666666666', '2.383838384']
Моя идея состоит в том, чтобы напечатать то же самое, но заменить точки на запятые внутри каждой строки списка UCL.
Проблема в том, что он
str
неизменяем и,replace
следовательно, возвращает копию строки (он не может изменить исходную строку). Вы можете создать новый список, используя сжатие списка с помощью:Если вы предпочитаете использовать
for
обычный и изменить исходный список, вы должны сделать:Я предполагаю, что вы хотите изменить список в дополнение к его печати. Если вы просто хотите печатать с помощью запятых, не изменяя исходный список, вы можете сделать (в Python 3):
Или для Python 2/Python3:
Хорхе, в Python строки, как и многие другие объекты, неизменяемы, сделайте следующее:
Он вернет это:
Этим мы подтверждаем, что он
s
все еще стоит «1.4». Что нужно сделать, так это сгенерировать новую строку, назначив:а теперь да
В вашем примере вы должны сделать следующее:
Я использовал это, и если это сработало для меня:
(tudato.replace(".",',') or :)
после замены вы указываете, что хотите заменить, после чего хотите появиться и
or
средства или изменить.
или:
для,
Меня устраивает: