Bunun nedeni , Python'da dizelerin değişmez olmasıdır .
Başka bir deyişle, yapılan değiştirmelerin bir kopyasınıX.replace("hello","goodbye") döndürür . Bu nedenle bu satırı değiştirmeniz gerekir:X
X.replace("hello", "goodbye")
bu çizgi ile:
X = X.replace("hello", "goodbye")
Daha geniş anlamda, bu "yerinde" Bir dizgenin içeriğini değiştirmek tüm Python dize yöntemleri için de geçerlidir , örneğin replace, strip, translate, lower/ upper, join...
Kullanmak ve atmak istemiyorsanız çıkışlarını bir şeye atamanız gerekir , örn.
X = X.strip(' \t')
X2 = X.translate(...)
Y = X.lower()
Z = X.upper()
A = X.join(':')
B = X.capitalize()
C = X.casefold()
ve bunun gibi.
x += 'a'özel durum için değiştirilebilir, örneğin stackoverflow.com/a/40996908/6260170