Python常见方法(3)-tuple的赋值报错、拆包、计数和拼接

说明:本blog基于python3版本


前言

一、tuple的常见赋值报错

tuple是python中的一种常见数据类型,中文名叫元组;python中的数据类型分为可以更改的数据类型和不可以更改的数据类型,常见的可以更改的数据类型包括list(列表),dictionary(字典),Numpy(全称为 numerical numpy,而元组是不可更改的数据类型;什么意思呢?从元组中元素的角度,元组中对应位置的元素是无法重复赋值的!否则报错!但如果元组中的元素本身是更改的数据类型,那么可以对该元素内部进行更改!但仍无法重新赋值!

另外,还得补充说明一下,这一切不妨碍我们重新对整体元组进行赋值!

我们用代码来重新阐述一下tuple的这三个基本属性
比如,我们设置一个叫a的tuple,值为 1,3,6
代码如下:

a = 1,3,6

第一步,我们重新赋值元组a第0位位置的元素时,就会报错!如下

a[0] = 2
Traceback (most recent call last):

  File "C:\Users\DELL\python学习-元组.py", line 14, in <module>
    a[0] = 2

TypeError: 'tuple' object does not support item assignment

然后我们重新定义一个元组b, 元组的第二个位置是一个list类型的数据,[1,2,3]
代码如下,

b = 1,[1,2,3],6

第二步,我们对元组b的第二个位置进行元素内部改写,扩充该元素为[1,2,3,4]
代码如下

b[1].append(4)
print(b)

结果如下

(1, [1, 2, 3, 4], 6)

但如果我们重新赋值元组第2个位置的元素为一个新的list,就会报错
代码如下

b[1]= [0]
Traceback (most recent call last):

  File "C:\Users\DELL\python学习-元组.py", line 11, in <module>
    b[1]=[0]

TypeError: 'tuple' object does not support item assignment

第三步,我们重新赋值整个tuple b,代码如下

b = 0,0
print(b)

结果如下,

(0, 0)

很好,这就是tuple赋值的秘密,你get了吗?

二、tuple拆包

tuple拆包是常见操作,就是以位置为标准,进行元素拆解、赋值
比如我们设置一个元组c,代码如下

c = 1,3,5,7

我想取得最后两个元素,并分别命名为d, e; 我们使用拆包方法

_,_,d,e = c
print("d = {},e = {}".format(d,e))

结果如下

d = 5,e = 7

如果tuple中的元素为tuple类型或者list类型,我们也可以使用for loop帮我们完成拆包
比如

a = ([1,2,3],[3,4,5],[5,6,7])

我们只打印tuple每个元素中的后两个元素

for _,d,f in a:
	print(d)
	print(f)

结果如下


2
3
4
5
6
7

OK, 这就是常见的tuple拆包方法,日常使用python时常用方法,一定要掌握哦~

三、tuple计算某个元素的重复次数和拼接

计数就是count()方法,拼接就是用“+”号啦~
首先我们演示计数方法:
代码:

a = 1,2,3,1,2,3,4,5,3
b = a.count(3)
print(b)

结果如下

3

然后我们演示拼接两个tuple,

a = [1,2,3]
b = [6,7,7]
c = a+b
print(c)

结果如下

[1, 2, 3, 6, 7, 7]

总结

希望本blog对你的python学习有所帮助,欢迎点赞关注~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Efred.D

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值