python字符串连接的方法,一般有以下三种:

方法1:直接通过加号(+)操作符连接
website = 'python' + 'tab' + '.com'
方法2:join方法
listStr = ['python', 'tab', '.com'] website = ''.join(listStr)
方法3:替换
website = '%s%s%s' % ('python', 'tab', '.com')
下面再来说一下三种方法的不同
方法1,使用简单直接,但是网上不少人说这种方法效率低
之所以说python 中使用 + 进行字符串连接的操作效率低下,是因为python中字符串是不可变的类型,使用 + 连接两个字符串时会生成一个新的字符串,生成新的字符串就需要重新申请内存,当连续相加的字符串很多时(a+b+c+d+e+f+...) ,效率低下就是必然的了
方法2,使用略复杂,但对多个字符进行连接时效率高,只会有一次内存的申请。而且如果是对list的字符进行连接的时候,这种方法必须是首选
方法3:字符串格式化,这种方法非常常用,本人也推荐使用该方法
下面用实验来说明字符串连接的效率问题。
比较对象:加号连接 VS join连接
python版本: python2.7
系统环境:CentOS
实验一:
# -*- coding: utf-8 -*-
from time import time
def method1():
t = time()
for i in xrange(100000):
s = 'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'
print time() - t
def method2():
t = time()
for i in xrange(100000):
s = ''.join(['pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab'])
print time() -t
method1()
method2()
结果:
0.641695976257
0.341440916061
实验二:
# -*- coding: utf-8 -*-
from time import time
def method1():
t = time()
for i in xrange(100000):
s = 'pythontab'+'pythontab'+'pythontab'+'pythontab'
print time() - t
def method2():
t = time()
for i in xrange(100000):
s = ''.join(['pythontab','pythontab','pythontab','pythontab'])
print time() -t
method1()
method2()
结果:
0.0265691280365
0.0522091388702
上面两个实验出现了完全不同的结果,分析这两个实验唯一不同的是:字符串连接个数。
结论:加号连接效率低是在连续进行多个字符串连接的时候出现的,如果连接的个数较少,加号连接效率反而比join连接效率高
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# python
# 字符串连接
# python连接两个字符串
# python中字符串连接
# python 将列表中的字符串连接成一个长路径的方法
# Python实现string字符串连接的方法总结【8种方式】
# Python 字符串操作(string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、分
# python字符串连接方法分析
# python连接字符串的方法小结
# python字符串连接的N种方式总结
# python字符串连接方式汇总
# python list 合并连接字符串的方法
# Python 连接字符串(join %)
# Python连接字符串过程详解
# 多个
# 三种
# 这种方法
# 的是
# 是在
# 是因为
# 推荐使用
# 这两个
# 只会
# 再来
# 有一次
# 人说
# 但对
# 较少
# 率高
# 大家多多
# 出现了
# 网上
# 效率高
# nbsp
相关文章:
企业在线网站设计制作流程,想建设一个属于自己的企业网站,该如何去做?
网站插件制作软件免费下载,网页视频怎么下到本地插件?
如何通过老薛主机一键快速建站?
香港服务器建站指南:免备案优势与SEO优化技巧全解析
浙江网站制作公司有哪些,浙江栢塑信息技术有限公司定制网站做的怎么样?
微网站制作教程,我微信里的网站怎么才能复制到浏览器里?
建站之星在线客服如何快速接入解答?
如何确保FTP站点访问权限与数据传输安全?
外贸公司网站制作哪家好,maersk船公司官网?
如何快速建站并高效导出源代码?
如何在阿里云服务器自主搭建网站?
如何在万网主机上快速搭建网站?
北京制作网站的公司,北京铁路集团官方网站?
怎么将XML数据可视化 D3.js加载XML
制作网站哪家好,cc、.co、.cm哪个域名更适合做网站?
Swift开发中switch语句值绑定模式
高性能网站服务器部署指南:稳定运行与安全配置优化方案
如何在新浪SAE免费搭建个人博客?
如何用景安虚拟主机手机版绑定域名建站?
如何在万网ECS上快速搭建专属网站?
如何配置WinSCP新建站点的密钥验证步骤?
如何有效防御Web建站篡改攻击?
如何通过cPanel快速搭建网站?
如何选择高效便捷的WAP商城建站系统?
武汉网站设计制作公司,武汉有哪些比较大的同城网站或论坛,就是里面都是武汉人的?
制作网站的公司有哪些,做一个公司网站要多少钱?
网站专业制作公司有哪些,做一个公司网站要多少钱?
高端建站三要素:定制模板、企业官网与响应式设计优化
网站制作与设计教程,如何制作一个企业网站,建设网站的基本步骤有哪些?
建站之星伪静态规则如何正确配置?
如何在Golang中处理模块冲突_解决依赖版本不兼容问题
网站建设制作、微信公众号,公明人民医院怎么在网上预约?
巅云智能建站系统:可视化拖拽+多端适配+免费模板一键生成
如何撰写建站申请书?关键要点有哪些?
TestNG的testng.xml配置文件怎么写
手机网站制作平台,手机靓号代理商怎么制作属于自己的手机靓号网站?
建站之星如何保障用户数据免受黑客入侵?
高配服务器限时抢购:企业级配置与回收服务一站式优惠方案
网站制作服务平台,有什么网站可以发布本地服务信息?
建站主机核心功能解析:服务器选择与网站搭建流程指南
建站之星如何实现五合一智能建站与营销推广?
自助网站制作软件,个人如何自助建网站?
较简单的网站制作软件有哪些,手机版网页制作用什么软件?
,柠檬视频怎样兑换vip?
如何用y主机助手快速搭建网站?
如何快速上传建站程序避免常见错误?
建站之星代理平台如何选择最佳方案?
建站主机选哪家性价比最高?
广东专业制作网站有哪些,广东省能源集团有限公司官网?
专业公司网站制作公司,用什么语言做企业网站比较好?
*请认真填写需求信息,我们会在24小时内与您取得联系。