Python基础(7)

前面我们讲了列表的创建的三种类型以及列表添加、修改、删除元素的常用的方法,用del删除整个列表,最后我们还说了列表中能使用的常用的操作符和运算关系。今天,我们再来讲一下元组(tuple)的相关知识。
元组——戴上了枷锁的列表
1)我们上节课讲的列表知识,可以看到列表是多么的强大,可是这种强大有时候太可怕了,所以Python的作者和社区的一些大佬们开始设计对列表的一个限制的东西——元组(tuple)
我们的元组和列表的显著不同的地方就是我们的元组是不可更改的类型,里面的数据已经确定的话,是不能直接更改的。
首先,来看一下元组的创建:

>>> tuple1 = (1,2,4,6,7)
>>> tuple2 = tuple1[:4]
>>> tuple3 = tuple1[2:]
>>> tuple4 = tuple1[:]
>>> tuple1[1] = 3
Traceback (most recent call last):
  File "<pyshell#4>", line 1, in <module>
    tuple1[1] = 3
TypeError: 'tuple' object does not support item assignment

>>> print(tuple2,tuple3,tuple4)
(1, 2, 4, 6) (4, 6, 7) (1, 2, 4, 6, 7)

从上面的例子中,我们可以看到元组的使用方法跟列表还是有很大程度的相同的:都可以分片,拷贝等基本操作,但是我们元组里面的元素是不能直接修改的,要不然是回报错的。

我们再来看一下下面的例子:

>>> temp2 = 2,3,4
>>> temp = ()
>>> temp1 = (1)
>>> temp3 = (1,)
>>> print(type(temp2),type(temp),type(temp1),type(temp3))
<class 'tuple'> <class 'tuple'> <class 'int'> <class 'tuple'>

可以清晰地看到只有temp1是整型,其他的几个数据类型都是元组类型,这是为什么呢?我们之前说列表的标志就是中括号([ ]),那么我们的元组的标志是什么呢?没错,就是逗号,而不是我们想的小括号。

2)下面,我们再来看一下元组的更新和删除:
有小伙伴们可能会说:你不是说元组里面的数据是不能更改的吗?为什么这里还是说替换和更新?
其实,是这样的,我们是无法来直接更改元组里面的数据,但是我们可以间接的来操作一下(利用我们之前的拼接和分片来进行):

>>> temp = ('lal',12,'nab','afc')

比如这一行代码,我们要是想在12前面插入数字67,那该怎么进行呢?(括号和逗号缺一不可)

>>> temp = temp[:1] + (67,) + temp[1:]
>>> temp
('lal', 67, 12, 'nab', 'afc')

这就相当与换了个标签,过一会儿,Python的垃圾回收装置会自动的收取垃圾

还能这样玩:

>>> temp = (8,)
>>> temp = 8 * (8,)
>>> temp
(8, 8, 8, 8, 8, 8, 8, 8)

这就是我们之前的重复操作符,至于列表的元素的删除,我们可以用同样的拼接的办法来进行,但是我们要是想删除整个元组的话,当然也是可以用del方法的

>>> del temp
>>> temp
Traceback (most recent call last):
  File "<pyshell#22>", line 1, in <module>
    temp
NameError: name 'temp' is not defined

和元组相关的操作符有:拼接操作符、重复操作符、逻辑操作符、成员关系操作符、关系操作符,小伙伴们可以自己试试!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值