在 Python 中替換字串中的字元

Manav Narula 2023年10月10日
  1. 使用 list()join() 函式替換字串中的字元
  2. 使用 bytearray() 函式替換字串中的字元
  3. 使用 replace() 函式替換字串中的字元
  4. 使用字串連線方法替換字串中的字元
在 Python 中替換字串中的字元

字串是字元的集合。在 Python 中,字串是不可變的。這意味著不可能修改此類物件,而只能對其進行重新分配,或者可以建立副本。

因此,替換字串中的字元並不簡單。如果要處理可變物件,可以很容易地更改其元素,如下表所示。

l = ["a", "b", "c"]
l[1] = "d"
print(l)

輸出:

['a', 'd', 'c']

我們對字串不做同樣的事情。在本教程中,我們將學習如何替換字串中的字元。

使用 list()join() 函式替換字串中的字元

在這種方法中,我們使用 list() 函式將字串轉換為字元列表。我們從此列表中更改必要的字元。然後,使用 join() 函式將整個列表組合為單個字串。

以下程式碼片段實現了此目的。

s = "Naze"
l = list(s)
l[2] = "m"
s = "".join(l)
print(s)

輸出:

Name

這是一種簡單有效的方法,儘管它被認為有點慢。

使用 bytearray() 函式替換字串中的字元

位元組陣列是 Python 中的可變物件。它是一個位元組陣列。我們可以使用 bytearray() 函式將字串轉換為位元組陣列,進行必要的替換,然後使用 str() 函式將其轉換回字串。

例如,

s = "Naze"
b = bytearray(s)
b[2] = "m"
s = str(b)
print(s)

輸出:

Name

請注意,此方法在 Python 3.x 及更高版本中失敗,因為我們需要在最新版本中對字串進行編碼。

使用 replace() 函式替換字串中的字元

Python 配備了許多用於處理字串的函式,因此功能非常齊全。我們可以使用 replace() 函式來更改字串中的字元。我們必須在函式中指定新舊字元。

以下程式碼演示了此函式的用法。

s = "Naze"
new_s = s.replace("z", "m")
print(new_s)

輸出:

Name

請注意,此方法將所有出現的舊字元替換為新字元。

使用字串連線方法替換字串中的字元

如果我們知道要更改的角色位置,則此方法將非常有用且快速。我們將字串劃分到該部分,新增字元,然後將其與剩餘的字串剩餘部分連線起來。

以下程式碼片段實現了此目的。

s = "Naze"
new_s = s[:2] + "m" + s[3:]
print(new_s)

輸出:

Name

請注意,這是所有方法中最快的。

作者: Manav Narula
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

相關文章 - Python String