Python入门基础篇 No.15 —— 字符串_split()分割_join()合并_join()效率测试
前生篇:字符串_切片slice操作_逆序
后世篇:字符串_驻留机制_内存分析_字符串同一判断_值相等判断
小白不看都能懂:Python之真功夫系列(全章)
前言
一、split()分割和 join()合并
split()可以基于指定分隔符将字符串分隔成多个子字符串(存储到列表中)。如果不指定分隔符,则默认使用空白字符(换行符/
空格/制表符)。
>>> x = 'my name is offer'
>>> x.split()
['my', 'name', 'is', 'offer']
>>> x.split('name')
['my ', ' is offer']
>>>
join()的作用和 split()作用刚好相反,用于将一系列子字符串连接起来。
>>> x = ['my', 'name', 'is', 'offer']
>>> '/'.join(x)
'my/name/is/offer'
>>>
二、拼接字符串要点和效率测试
使用字符串拼接符+,会生成新的字符串对象,因此不推荐使用+来拼接字符串。推荐使用 join 函数,因为 join 函数在拼接字符
串之前会计算所有字符串的长度,然后逐一拷贝,仅新建一次对象。
import time
print('-' * 30)
time_1 = time.time() # 开始
x = ''
for i in range(1000000):
x += 'offer'
time_2 = time.time() # 结束
print("运算时间:" + str(time_2 - time_1))
print('-' * 30)
time_3 = time.time() # 开始
li = []
for i in range(1000000):
li.append('offer')
y = ''.join(li)
time_4 = time.time() # 结束
print("运算时间:" + str(time_4 - time_3))
------------------------------
运算时间:1.6648049354553223
------------------------------
运算时间:0.11000323295593262
总结
以上帮各位总结好了,收藏,关注即可查收。
前生篇:字符串_切片slice操作_逆序
后世篇:字符串_驻留机制_内存分析_字符串同一判断_值相等判断
小白不看都能懂:Python之真功夫系列(全章)
关注下方公众号,免费拿Python学习资料!!!