了解字串連接的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中文網其他相關文章!