Python - 重寫不可變的字符串(字符串的修改)


我們在修改字符串時  通常遇到報錯:

  TypeError: 'str' object does not support item assignment

在Python中,字符串是不可變類型,即無法直接修改字符串的某一位字符。
因此改變一個字符串的元素需要新建一個新的字符串。
常見的修改方法有以幾種:

 

方法1:將字符串轉換成列表后修改值,然后用join組成新字符串

# 原字符串
s = 'abcdef'
# 將字符串轉換為列表
s1 = list(s)
print(s1)
# 將列表中的第5個字符修改為E
s1[4] = 'E'
# 將列表中的第5個字符修改為E
s1[5] = 'F'
print(s1)
# 用空串將列表中的所有字符重新連接為字符串
s = ''.join(s1)
print(s)

 


 

 

方法2: 通過字符串序列切片方式

spam = 'I have a pet cat'

spam = spam[:13] + 'C' + spam[14:]
print(spam)

 


 

方法3: 使用字符串的replace函數

 

s = 'abcdef'
# 用A替換a
s = s.replace('a', 'A')
print(s)
# 用123替換bcd
s = s.replace('bcd', '123')
print(s)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM