1
當我在第二種情況下沒有替換字符串的一部分(在該情況下,實際上是一個字母),它爲什麼會發生改變我用字符串的方法困惑.replace
in> #first case
in>print('Hello, World!'.replace('l','L'))
out>HeLLo, WorLd!
#second case
a = 'Hello, World!'
a.replace('l','L')
print(a)
out>Hello, World!
因爲'replace'不會改變現有的字符串。它創建一個新的字符串版本並返回它。 – JCVanHamme
理解python字符串是不可變的是很重要的。 – polku
這樣做a.replace('l','L')不會影響你的字符串'a',正如託託所說的,你必須將它分配給你的變量或其他變量。 – berthos