(一)Python入门-2编程基本概念:17字符串-split()分割-join()合并-join()效率测试

一:split()分割

  split()可以基于指定分隔符将字符串分隔成多个子字符串(存储到列表中)。如果不指定分隔 符,则默认使用空白字符(换行符/空格/制表符)。示例代码如下:

1 >>> a = "to be not to be"
2       
3 >>> a.split()
4       
5 ['to', 'be', 'not', 'to', 'be']
6 >>> a.split("be")
7       
8 ['to ', ' not to ', '']

二:join()合并

  join()的作用和split()作用刚好相反,用于将一系列子字符串连接起来。示例代码如下:

1 >>> a = ['jack','jack001','jack002']
2       
3 >>> ''.join(a)
4       
5 'jackjack001jack002'
6 >>> '#'.join(a)
7       
8 'jack#jack001#jack002'

注:拼接字符串要点:

  使用字符串拼接符+,会生成新的字符串对象,因此不推荐使用+来拼接字符串。推荐使用join 函数,因为join函数在拼接字符串之前会计算所有字符串的长度,然后逐一拷贝,仅新建一次对象。

  【操作】测试+拼接符和 join(),不同的效率。(创建源文件mypy06.py)

 1 import time
 2 
 3 time01 = time.time()   #起始时刻
 4 a = ""
 5 for i in range(1000000):
 6     a += "jack"
 7 time02 = time.time()   #终止时刻
 8 print("+拼接运行时间:"+str(time02-time01))
 9 
10 
11 time03 = time.time()   #起始时刻
12 li = []
13 for i in range(1000000):
14     li.append("jack")
15 a = "".join(li)
16 time04 = time.time()   #终止时刻
17 print("join拼接运行时间:"+str(time04-time03))

  运行结果:

    +拼接运行时间:0.955474853515625
    join拼接运行时间:0.11672139167785645

posted on 2019-05-11 23:25  JACK#zhang  阅读(335)  评论(0编辑  收藏  举报