Почему replace не заменяет строку?
Пишу код
12345678
d = ""
for x in range(1,27):
d+="\n if len(lst_in["+str(x)+"].split()) >= 2:\n print(' [',g["+str(x-1)+"].split()[::-1][0],' ',g["+str(x-1)+"].split()[::-1][1],']',sep='')"
print("if d == "+str(x)+": "+"""\n if len(lst_in[0].split()) >= 2:
print('[[',g[0].split()[::-1][1],' ',g[0].split()[::-1][0],']',sep='')"""+d.replace("[::-1][0],' ',","[::-1][1],' ',").replace("[::-1][1],']]',sep=''","[::-1][0],']]',sep=''").replace("[::-1][1],']',sep=''","[::-1][0],']',sep=''").replace("""[::-1][0],']',sep='')
if d ==""","""[::-1][0],']]',sep='')
if d ==""")) Хочу что-бы допустим, вместо
1234567
...
if len(lst_in[12].split()) >= 2:
print(' [',g[11].split()[::-1][1],' ',g[11].split()[::-1][0],']',sep='')
if len(lst_in[13].split()) >= 2:
print(' [',g[12].split()[::-1][1],' ',g[12].split()[::-1][0],']',sep='')
if d == 14:
... было
1234567
...
if len(lst_in[12].split()) >= 2:
print(' [',g[11].split()[::-1][1],' ',g[11].split()[::-1][0],']',sep='')
if len(lst_in[13].split()) >= 2:
print(' [',g[12].split()[::-1][1],' ',g[12].split()[::-1][0],']]',sep='')
if d == 14:
... Но вместо этого выводит
1234567
...
if len(lst_in[12].split()) >= 2:
print(' [',g[11].split()[::-1][1],' ',g[11].split()[::-1][0],']',sep='')
if len(lst_in[13].split()) >= 2:
print(' [',g[12].split()[::-1][1],' ',g[12].split()[::-1][0],']',sep='')
if d == 14:
... Мне нужно что-бы там был скобочка как сделать?
ДополненНу кто нибудь ответьте мне... Блин, ребят ну серьезно...
По дате
По рейтингу
Потому что строки неизменяемы. Реплейс возвращает новую измененную строку, которую надо чему-то присвоить.
В вашем случае возможно в самой строке нет такого куска, который вы заменяете
В смысле строки неизменяемы? А как тогда быть? Если строка на последующей строке?
А всё разобрался спасибо
Replace заменяет все элементы, а ты пытаешься заменить один, я правильно понимаю?
Да я уже разобрался, скопировал вывод и replac'ом изменил
1234567
print(' [',g[24].split()[::-1][1],' ',g[24].split()[::-1][0],']',sep='')
if len(lst_in[26].split()) >= 2:
print(' [',g[25].split()[::-1][1],' ',g[25].split()[::-1][0],']',sep='')"""
d = s.replace("""']',sep='')
if d ==""","""']]',sep='')
if d ==""")
print(d) Оказывается надо было присвоить код переменной, но я все равно непонимаю почему replace не изменил если он на следующей строке :\
Видео по теме