為什麼 .join() 在 Python 中的元素之間插入字元而不是附加字串?

Mary-Kate Olsen
發布: 2024-11-19 20:01:03
原創
499 人瀏覽過

Why Does .join() Insert Characters Between Elements Instead of Appending a String in Python?

了解字串連接的Join() 方法

在使用Python 時,您可能會遇到.join() 的概念連接字串的首選方法。然而,它的功能可能會讓初學者感到困惑。

考慮以下程式碼片段:

strid = repr(595)
print(array.array('c', random.sample(string.ascii_letters, 20 - len(strid))).tostring().join(strid))
登入後複製

此程式碼的行為不符合預期。它不是將“595”附加到結果中,而是產生 ASCII 字母表中的字元輸出,其中散佈著“595”的數字。

.join() 方法

為了理解原因,讓我們拆解 .join() 方法。它將字串作為參數並將其插入給定列表的元素之間。例如:

","join(["a", "b", "c"])
登入後複製

將產生「a,b,c」。在列表的每個元素之間插入“,”。

在您的程式碼中,「595」被視為三個單獨字元的清單:[「5」、「9」、「5」]。因此,.join() 方法的字串參數被插入到這些字元之間,從而產生觀察到的輸出。

替代方法:

如果您的意圖是將字串「595」連接到產生的字串,您應該使用運算符:

print(array.array('c', random.sample(string.ascii_letters, 20 - len(strid))).tostring() + strid)
登入後複製

這將正確連接兩個字串,產生一個具有所需內容的字串。

以上是為什麼 .join() 在 Python 中的元素之間插入字元而不是附加字串?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板