python字符串处理简单优化

 以前连接字符串喜欢用"%s%s"方式
发现效率很低 不过又有更好的方法了
 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import time
def main1():
st=time.clock()
s=""
for x in range(20000):
s="%s%s"%(s,x)
teststr=s
print "main1 len=%s time:%s"%(len(teststr),time.clock()-st)
def main2():
st=time.clock()
s=[]
for x in range(20000):
s.append("%s"%x)
teststr="".join(s)
print "main2 len=%s time:%s"%(len(teststr),time.clock()-st)
main1()
main2()



运行结果是
main1 len=88890 time:0.507007175493
main2 len=88890 time:0.0338646392209
差距大吧

用list之后join的性能是"%s%s"的好多倍
所以以后这样的应用全部改成用list  
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值