python - string.join 使用元组或列表更快吗?

标签 python string list join tuples

如果我可以选择

''.join( ['a', 'b'] )

''.join( ('a', 'b') )

我应该使用哪一个(哪个更快)?重要吗?

最佳答案

它们几乎是等价的,您始终可以使用 timeit 模块为您的代码计时:

In [145]: small_lis,small_tup = ['a','b']*10, ('a','b')*10

In [146]: avg_lis,avg_tup = ['a','b']*1000, ('a','b')*1000

In [147]: huge_lis,huge_tup = ['a','b']*10**6, ('a','b')*10**6

item个数为20时的计时结果:

>>> %timeit ''.join(small_lis)
1000000 loops, best of 3: 987 ns per loop

>>> %timeit ''.join(small_tup)
1000000 loops, best of 3: 1 us per loop

平均大小(2000 件):

>>> %timeit ''.join(avg_lis)
10000 loops, best of 3: 71.5 us per loop

>>> %timeit ''.join(avg_tup)
10000 loops, best of 3: 72.8 us per loop

巨大的尺寸(2* 10**6 件):

>>> %timeit ''.join(huge_lis)
1 loops, best of 3: 79.9 ms per loop

>>> %timeit ''.join(huge_tup)
1 loops, best of 3: 77.5 ms per loop

关于python - string.join 使用元组或列表更快吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16243983/

相关文章:

java - 从 Java 中的字符串中删除第一个单词

javascript - 无法在js中的条件语句中比较0

python - 带有单个元素的 zip 列表

Python多处理第二个进程未启动

python - "No module named site"在 Visual Studio 的 C++ 中嵌入 Python 时

python - 断言python Appium中的特殊字符

python - 如何在 python 中定义函数来重复提示? (初学者)

Javascript:在对象数组中找不到字符串时的操作(if 语句)

Python:迭代多个列表以获得相同索引的每个项目的中值

python - 跨 Pandas DataFrame 中多列的映射方法