在 Python 中將字串分成兩半

Manav Narula 2021年10月2日
在 Python 中將字串分成兩半

字串可以被認為是一個字元序列。在 Python 中,此類物件是不可變的,可以使用不同的函式對其進行操作。

在本教程中,我們將討論如何在 Python 中將字串分成兩半。

為此,我們將使用字串切片方法。

在字串中,每個字元都儲存在特定位置。我們可以使用這些索引來訪問字元。字串切片是一種使用索引方法將字串劃分為子字串的方法。我們可以使用此方法將字串分成兩半。

請參考下面的程式碼。

s = "string"
s1 = s[: len(s) // 2]
s2 = s[len(s) // 2 :]
print(s1, s2)

輸出:

str ing

在上面的程式碼中,我們正在處理一個包含偶數個字元的字串。這裡的 len() 函式用於返回字串的長度。我們將字串分成包含前一半字元的一半和包含另一半字元的第二個子字串。

我們使用//運算子來劃分字串的長度,因為它執行的是地板除法,並返回一個整數。當我們處理一個包含奇數個字元的字串時,我們必須處理導致兩個長度不等的子字串的額外字元。

例如,

s = "example"
s1 = s[: len(s) // 2]
s2 = s[len(s) // 2 :]
print(s1, s2)

輸出:

exa mple

如果需要,我們也可以刪除這個額外的字元。為了實現這一點,我們只需要對上面的程式碼做一些細微的改動。我們將使用 if() 語句來檢查字串的長度是否為偶數。如果是偶數,那麼我們將其一分為二並拆分字串;否則,我們將其一半增加一併跳過中間的額外字元。

例如,

s = "example"
s1 = s[: len(s) // 2]
s2 = s[len(s) // 2 if len(s) % 2 == 0 else (((len(s) // 2)) + 1) :]
print(s1, s2)

輸出:

exa ple

我們還可以使用 slice() 建構函式來執行字串切片。要使用這個方法,我們需要使用這個函式並初始化一個物件。我們使用這個物件來執行切片並將字串分成兩半。

例如,

s = "string"
a = len(s)
s1 = slice(0, len(s) // 2)
s2 = slice(len(s) // 2, len(s))
print(s[s1], s[s2])

輸出:

str ing

請注意,本文討論瞭如何將字串拆分為兩個相等的部分。我們也可以很容易地使用上述方法根據某個索引拆分字串。

作者: 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