Python 3.8从零开始学
上QQ阅读APP看书,第一时间看更新

3.1.3 序列相加

序列支持加法操作,使用加号可以进行序列的连接操作,在交互模式下输入:

>>> [1, 2, 3] + [4, 5, 6]
[1, 2, 3, 4, 5, 6]
>>> a=[1, 2]
>>> b=[5, 6]
>>> a + b
[1, 2, 5, 6]
>>> s='hello,'
>>> w='world'
>>> s + w
'hello,world'

由输出结果可以看到,数字序列可以和数字序列通过加号连接,连接后的结果还是数字序列;字符串序列也可以通过加号连接,连接后的结果还是字符串序列。

数字序列是否可以和字符串序列相加呢,相加的结果又是怎样的呢?在交互模式下输入:

>>> [1, 2] + 'hello'
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: can only concatenate list (not "str") to list
>>> type([1, 2])        #取得[1,2]的类型为list
<class 'list'>
>>> type('hello')        #取得hello的类型为字符串
<class 'str'>

由输出结果可以看到,数字序列和字符串序列不能通过加号连接。错误提示的信息是:列表只能和列表相连。

提示


只有类型相同的序列才能通过加号进行序列连接操作,不同类型的序列不能通过加号进行序列连接操作。