python字符串连接方法效率比较
Posted 沧海一粟,何以久远
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python字符串连接方法效率比较相关的知识,希望对你有一定的参考价值。
方法1:直接通过加号(+)操作符连接
1
|
website = \'python\' + \'tab\' + \'.com\' |
方法2:join方法
1
2
|
listStr = [ \'python\' , \'tab\' , \'.com\' ] website = \'\'.join(listStr) |
方法3:替换
1
|
website = \'%s%s%s\' % ( \'python\' , \'tab\' , \'.com\' ) |
之所以说python 中使用 + 进行字符串连接的操作效率低下,是因为python中字符串是不可变的类型,使用 + 连接两个字符串时会生成一个新的字符串,生成新的字符串就需要重新申请内存,当连续相加的字符串很多时(a+b+c+d+e+f+...) ,效率低下就是必然的了
方法2,使用略复杂,但对多个字符进行连接时效率高,只会有一次内存的申请。而且如果是对list的字符进行连接的时候,这种方法必须是首选
另外使用字符串连接的时候注意不同类型直接连接错误情况:unicode和字符串可以直接连接,字符串和汉字可以了直接连接,但是unicode和汉字不可以直接连接
参考:
1、https://www.cnblogs.com/chenjingyi/p/5741901.html 这篇博客的结论有问题,所测试方法依然是重新申请了内存
以上是关于python字符串连接方法效率比较的主要内容,如果未能解决你的问题,请参考以下文章