了解字符串连接的 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中文网其他相关文章!