iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >为什么不在Python中使用+来连接字符串
  • 512
分享到

为什么不在Python中使用+来连接字符串

2023-06-16 11:06:01 512人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

本篇内容主要讲解“为什么不在python中使用+来连接字符串”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“为什么不在Python中使用+来连接字符串”吧!开始作为一名初学者,或者刚从使用“+”连

本篇内容主要讲解“为什么不在python中使用+来连接字符串”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“为什么不在Python中使用+来连接字符串”吧!

开始

作为一名初学者,或者刚从使用“+”连接字符串的其他编程语言切换过来的人,很顺手地就会写出这样的代码:

str1 =“I love” str2 =“Python.” print(str1 + str2)

为什么不在Python中使用+来连接字符串

但时间久了,你或许或许就会发现,别人都是这样写的:

str1 =“I love” str2 =“Python.” print(''.join([str1,str2]))
为什么不在Python中使用+来连接字符串

实话说,当我第一次看到上述方法时,我认为这既不直观也不美观。

连接多个字符串

转折发生在不久之后,有一次我需要连接列表中的多个字符串。

strs = ['Life','is','short','I','use','Python']

最初,我是这样做的:

strs = ['Life', 'is', 'short,','I', 'use', 'Python']def join_strs(strs):     result = ''     for s in strs:         result += ' ' + s     return result[1:]join_strs(strs)
为什么不在Python中使用+来连接字符串

我必须编写一个for循环来逐个连接字符串。另外,结果字符串前需要删除我在开头添加的空格,因为所有字符串都需要在前面添加空格,而不是单是开头。

或许你有其他解决方案,例如将索引添加到for循环中,这样就不应将index=0处的字符串添加到此空格处。无论如何,你仍然需要使用此for循环并为空格做些什么。

这时,我回想起以前曾经看过.join()方法,灵光乍现,也许这正是我需要使用它的时候!

为什么不在Python中使用+来连接字符串

超轻松解决了!一行代码可以完成所有工作。由于.join()方法是由字符串对象调用的,该字符串对象将用于连接列表中的每个字符串,因此你无需担心开头的空格。

但这不是我们需要使用join()而不是“+”方法的唯一原因。

join()方法背后的逻辑

让我们来比较一下这两种方法的性能,使用Jupyter Notebook的魔术方法%timeit来对其进行评估。

为什么不在Python中使用+来连接字符串

上面显示的性能基于10万条路径,结果是非常可信且显而易见的。使用join()方法可能比使用“+”来连接列表中的字符串快4倍。

这是为什么呢?看看我绘制的概念图,用于演示使用“+”连接字符串的方法:

为什么不在Python中使用+来连接字符串
使用“+”运算符和for循环将字符串连接

这显示了for循环和“+”运算符的作用:

  • 对于每个循环,都可以从列表中找到字符串

  • 对于每个循环,执行程序将需要申请两次内存地址,一次用于空格,另一次用于字符串。

  • Python执行程序解释表达式result + =''+s并为空格申请内存地址。

  • 然后,执行程序意识到空格需要与字符串连接,因此它将为字符串s申请内存地址,这是第一个循环“life”。

  • 其中还存在12次内存分配。

那么,使用join()方法发生了什么?

为什么不在Python中使用+来连接字符串
使用“ join()”方法将字符串连接到列表中
  • 执行程序将计算列表中有多少个字符串。这里有6个。

  • 这意味着用于连接列表的字符串需要重复6-1 =5次。

  • 这里总共需要11个内存空间,因此所有的这些空间将被立即应用并被预先分配。

  • 然后按顺序排列字符串,再返回结果页面。

很明显,主要的区别在于内存分配的次数,这就是提高性能的主要原因。想象一下,使用join()方法将6个字符串连接在一起,速度已经快了4倍。如果我们连接了大量的字符串呢?它将发生更大的变化!

在Python中连接字符串时,显然,考虑到其性能,join()方法是首选。

通常来说,学习一门编程语言需要很长的时间。但是初学者上手Python的时间相对较短,这是它的优势之一。但我们不应止步于此并满足于现在可以使用Python所做的事情。

到此,相信大家对“为什么不在Python中使用+来连接字符串”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

--结束END--

本文标题: 为什么不在Python中使用+来连接字符串

本文链接: https://www.lsjlt.com/news/283426.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 为什么不在Python中使用+来连接字符串
    本篇内容主要讲解“为什么不在Python中使用+来连接字符串”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“为什么不在Python中使用+来连接字符串”吧!开始作为一名初学者,或者刚从使用“+”连...
    99+
    2023-06-16
  • oracle中使用什么符号来连接字符串
    oracle 中使用双竖线符号 (||) 连接字符串,它作为连接运算符,可将字符串值组合成一个新字符串。它可连接不同数据类型的字符串值,包括文字、变量、表达式和列值,用于拼接字符串、添加...
    99+
    2024-05-08
    oracle
  • 为什么可以Python中使用f-string 连接字符串与数字
    本篇文章为大家展示了为什么可以Python中使用f-string 连接字符串与数字,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。下面以字符串和数字为例,看看强行操作会产生什么结果:>>&...
    99+
    2023-06-06
  • python怎么用f-string来连接字符串
    这篇文章主要为大家展示了“python怎么用f-string来连接字符串”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“python怎么用f-string来连接字...
    99+
    2024-04-02
  • oracle中字符串用什么连接
    oracle 中连接字符串有五种方式:1. 加号 (+) 运算符;2. concat 函数;3. || 运算符(oracle 12c 及更高版本);4. dbms_lob.concat ...
    99+
    2024-05-07
    oracle
  • oracle中字符串用什么符号连接
    oracle 中连接字符串的符号是加号 (+)。使用方法是将字符串用加号连接起来,如 'hello' || ' world'。嵌套加号可用于连接多个字符串。concat() 函...
    99+
    2024-05-07
    oracle
  • 为什么 Python 中的 f-string 可以连接字符串与数字
    这篇文章主要讲解了“为什么 Python 中的 f-string 可以连接字符串与数字”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“为什么 Python 中的 f-string 可以连接字符...
    99+
    2023-06-15
  • python使用join函数连接字符串
    在python中使用join()函数对字符串进行连接的方法join:join()函数的作用是用于将序列中的元素以指定的字符连接生成一个新的字符串。join()函数语法:str.join(sequence)参数:sequence:表示需要连接...
    99+
    2024-04-02
  • 怎么在mysql中使用concat_ws函数连接字符串
    本篇文章给大家分享的是有关怎么在mysql中使用concat_ws函数连接字符串,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。1、concat_ws()函数将有分隔符...
    99+
    2023-06-14
  • python怎么用.join()连接字符串
    这篇文章主要介绍了python怎么用.join()连接字符串,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。用.join()连接字符串假设我们有一个包含不同字符串的列表,我们想...
    99+
    2023-06-27
  • sql中字符串连接符号是什么
    sql 中的字符串连接符号是两个竖线(||),用于连接两个字符串,连接结果为字符串的拼接。 SQL 中的字符串连接符号 SQL 中用于连接字符串的符号是两个竖线(||)。这个符号表示将...
    99+
    2024-05-08
  • python连接字符串的方法是什么
    在Python中,可以使用加号(+)运算符来连接字符串。例如: str1 = "Hello" str2 = "World" resu...
    99+
    2023-10-23
    python
  • 为什么vue中不建议使用空字符串作为className
    目录比较空字符串''和null情况1:使用空字符串''情况2:使用null情况3:使用undefined使用对象的形式绑定class使用 &&绑定class案例1:i...
    99+
    2024-04-02
  • oracle中字符串用什么符号连接数据库
    oracle使用“||”符号连接字符串。使用方法如下:将要连接的字符串用“||”符号连接起来;字符串连接的优先级较低,需要使用括号来保证优先级;空字符串连接后仍为一个空字符串;null值...
    99+
    2024-05-08
    oracle
  • php字符串连接符如何使用
    在PHP中,可以使用.(点)作为字符串连接符。例如:```php$str1 = "Hello";$str2 = "World";$r...
    99+
    2023-08-30
    php
  • java多行字符串怎么连接起来
    在Java中,可以使用加号(+)运算符将多行字符串连接起来。例如: String str1 = "Hello, "...
    99+
    2024-04-02
  • ADO.Net中怎么利用连接池连接字符串
    ADO.Net中怎么利用连接池连接字符串,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。说了这么多ADO.Net连接池的相关注释,那我们什么时候需要使用到Conn...
    99+
    2023-06-17
  • js怎么用函数来连接多个字符串
    这篇文章主要讲解了“js怎么用函数来连接多个字符串”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“js怎么用函数来连接多个字符串”吧!在JavaScript字...
    99+
    2024-04-02
  • SQL中如何使用DataContext连接字符串
    SQL中如何使用DataContext连接字符串,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。LINQ to SQL有很多值得学习的地方,这里我们主要介绍LINQ to SQL...
    99+
    2023-06-17
  • MYSQL中怎么连接字符串
    MYSQL中怎么连接字符串,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。  MYSQL字符串怎么连接  在MYSQL中也可以使用加号“+”来连...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作