![](https://i-blog.csdnimg.cn/blog_migrate/0a4b8b8df05153c5a326aebbb8ea7fd3.png)
之前我们已经看到Python能够将+运算符与字符串组合在一起,以便在屏幕上显示消息。 例如,此代码将打印单词“ Hello”,然后在名称变量旁边打印任何内容。 这称为字符串连接 。
请注意,必须包含一个空格字符,以便打印功能不仅仅以不可读的方式组合单词。
但是,就像在许多编程语言中一样,在Python中有多种方法可以执行类似的操作。 实际上,级联会在内存中创建每个字符串,然后将其存储的所有字符串合并在一起以形成一个新的字符串-在内存方面并不是很有效。 结合起来还很挑剔:
![](https://i-blog.csdnimg.cn/blog_migrate/684fad298c9bf567e47a793383a78e1d.png)
严重的Python啊,为什么在这里出错?! Python只喜欢连接字符串-这里的2是一个数字。 Python告诉我们这是因为我们有一个TypeError —项目2必须是字符串,而不是整数 。 因此,我们可以这样做:
![](https://i-blog.csdnimg.cn/blog_migrate/d78ce307d3e98b304011be6f98aaf28b.png)
在这里,我们将数字2转换为str-转换为字符串数据类型。 现在,Python对此完全感到满意,但这有点困难。 考虑以下更实际的代码:
![](https://i-blog.csdnimg.cn/blog_migrate/979712cb3fa2c9390daccf236724e277.png)
您可能会认为需要一个str来将键入的数字从数字更改为字符串。 但是,如果您使用输入命令,Python会偷偷地将所有内容转换为字符串。 这既非常有用,也很烦人,因为它会使新手措手不及。
使用串联的规则是-仅当您知道变量或数据类型是字符串时才使用它。 如有必要,使用str将它们转换为字符串。 或者,考虑替代方案,这就是下一步要做的事情。
From: https://hackernoon.com/python-fundamentals-4-concatentation-6caaf8d3a0fa