1514
|
Evan Fosmark · 技术社区 · 16 年前 |
1
1346
这是因为任何iterable都可以连接(例如,list、tuple、dict、set),但它的内容和“joiner” 必须是 串。
|
2
370
会议讨论了这一点
String methods... finally
线程,并被Guido接受。这条线索始于1999年6月
以下是一些额外的想法(我自己和我朋友的):
Guido的决定记录在
historical mail
,决定
|
3
255
因为
我同意这看起来很有趣。 http://www.faqs.org/docs/diveintopython/odbchelper_join.html :
|
4
75
如果join是列表的一个方法,那么它必须检查它的参数以决定调用哪一个参数。你不能把byte和str连接在一起,所以他们现在的方式是有意义的。 |
5
47
这是因为
如果你有一组字符串呢?如果这是一个
要使用它,请注意,我们必须首先从每个iterable创建一个列表,以连接该iterable中的字符串,从而浪费内存和处理能力:
因此,我们必须添加一个额外的步骤来使用list方法,而不仅仅是使用内置的string方法:
Python用于创建最终字符串的算法
因此,虽然传递生成器通常比列表理解更好,
|
6
24
我理解为什么它适用于任何可移植的东西,所以不容易实现 只是 在名单上。
|
7
14
我做了一份详尽的方法的备忘单供你参考。
|
8
13
主要是因为
|
9
2
两者都不好。
join(定界)有点好,因为我们已经习惯了字符串是一种基本类型(从语言上讲,它们是)。然而,这意味着连接需要动态调度,因为在
如果python运行时编译器知道list是一个内置模块,它可以跳过动态查找并直接将意图编码到字节码中,否则它需要动态解析“a”的“join”,这可能是每个调用的多个继承层(因为在调用之间,join的含义可能已经改变,因为python是一种动态语言)。 可悲的是,这是抽象的终极缺陷;不管你选择什么抽象,你的抽象只会在你试图解决的问题的背景下才有意义,因此,当你开始将它们粘在一起,而不将它们包装在与你的意识形态一致的视图中时,你永远不可能有一个不与潜在意识形态不一致的一致的抽象。知道了这一点,python的方法更加灵活,因为它更便宜,这取决于您是否需要支付更多的费用来让它看起来“更好”,或者是通过制作您自己的包装器,或者是您自己的预处理器。 |
10
1
|
Dima Malko · 如何在指定符号前添加符号? 2 年前 |
shekharsabale · 从列表元素捕获子字符串 2 年前 |
Manny · 如何比较Perl中的字符串? 2 年前 |
Manan Girdhar · 拆分字符串并仅在java中使用第二部分 2 年前 |
AnxiousLuna · Python使用len()获取数组索引数 2 年前 |
antonoyaro8 · 数据帧中每列上的Grepl 2 年前 |