Python中元组和列表之间的区别和相似之处是什么?

List和Tuple都被称为Python的序列数据类型。两种类型的对象都是逗号分隔的项目集合,不一定是同一类型。

相似之处

可以对两种类型的对象进行串联,重复,索引和切片

>>> #list operations

>>> L1=[1,2,3]

>>> L2=[4,5,6]

>>> #concatenation

>>> L3=L1+L2

>>> L3

[1, 2, 3, 4, 5, 6]

>>> #repetition

>>> L1*3

[1, 2, 3, 1, 2, 3, 1, 2, 3]

>>> #indexing

>>> L3[4]

5

>>> #slicing

>>> L3[2:4]

[3, 4]


>>> #tuple operations

>>> T1=(1,2,3)

>>> T2=(4,5,6)

>>> #concatenation

>>> T3=T1+T2

>>> T3

(1, 2, 3, 4, 5, 6)

>>> #repetition

>>> T1*3

(1, 2, 3, 1, 2, 3, 1, 2, 3)

>>> #indexing

>>> T3[4]

5

>>> #slicing

>>> T3[2:4]

(3, 4)

两种类型都具有以下内置功能

len() -按顺序返回元素数

>>> L1=[45,32,16,72,24]

>>> len(L1)

5

>>> T1=(45,32,16,72,24)

>>> len(T3)

max() -返回具有最大值的元素。

>>> max(L1)

72

>>> max(T1)

72

min() -返回具有最小值的元素。

>>> max(T1)

72

>>> min(L1)

16

>>> min(T1)

16

差异性

列表对象是可变的。因此,可以从列表中追加,更新或删除项目。

>>> L1=[45,32,16,72,24]

>>> L1.append(56)

>>> L1

[45, 32, 16, 72, 24, 56]

>>> L1.insert(4,10) #insert 10 at 4th index

>>> L1

[45, 32, 16, 72, 10, 24, 56]

>>> L1.remove(16)

>>> L1

[45, 32, 72, 10, 24, 56]

>>> L1[2]=100 #update

>>> L1

[45, 32, 100, 10, 24, 56]

元组是不可变的对象。任何试图修改它的操作都会导致AttributeError

T1.append(56)

AttributeError: 'tuple' object has no attribute 'append'

>>> T1.remove(16)

AttributeError: 'tuple' object has no attribute 'remove'

>>> T1[2]=100

TypeError: 'tuple' object does not support item assignment


以上是 Python中元组和列表之间的区别和相似之处是什么? 的全部内容, 来源链接: utcz.com/z/350341.html

回到顶部