资讯专栏INFORMATION COLUMN

python基础知识之元组

ACb0y / 1564人阅读

摘要:元组运算符可与使用加号来连接两个元组输出为也可以使用乘号输出为当然也可以用成员运算符通用地可以使用删除元组元组相关内置函数计算元组元素个数。返回元组中元素最大值返回元组中元素最小值。可迭代对象将可迭代对象转换为元组。

元组是什么?

你可以把它看作是只读的列表,因为元组不可改变,但是要注意,如果元组中含有列表元素,则该列表元素是可变的,通俗地讲就是“儿子不可变,但是孙子可变”

由于元组不可变,所以对于增删改查这四种标准操作来讲只有查能实现,元组的查询操作很简单

创建元组

可以通过直接赋值的方式创建元组,用逗号间隔元素,可以用括号括起来,但这不是必要的,重要的是逗号,比如:

a = 1,2,3
b = (1,2,3)
print(type(a))
print(type(b))
对于a和b两种创建方式是等价的,a和b的类型都是元组,输出结果为:

但是如果创建单个元素的元组,则必须在后面多加一个逗号,比如:

a = 1,
print(type(a))
输出结果为:


在数字1后面加上一个逗号,则它的类型就是元组,否则它的类型就是int

而如果只用括号的话,则不是元组:
a = (1)
print(type(a))
输出结果为:

所以更加说明了括号不是重要的,重要的是逗号。
访问元组

可以方便地用索引以及切片的方法来访问元组:

a = 1,2,3,4,5,6,7
print(a[1::2])
输出为:
(2, 4, 6)
修改元组

元组本身是不可修改的,但是如果其中包含的元素可变的话,则可以对该元素内部修改,比如:

a = 1,2,3,[2,3,4]
a[3].append("new")
print(a)
输出为:
(1, 2, 3, [2, 3, 4, "new"])
虽然a是元组,但是索引3的元素是列表,这时可以对该列表进行修改。
元组运算符

可与使用加号来连接两个元组

a = 1,2,3
b = 4,5,6
c = a + b
print(c)
输出为:
(1, 2, 3, 4, 5, 6)

也可以使用乘号:

a = 1,2,3
b = a*4
print(b)
输出为:
(1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3)

当然也可以用成员运算符in

通用地可以使用del删除元组

元组相关内置函数

len() 计算元组元素个数。
max() 返回元组中元素最大值
min() 返回元组中元素最小值。

tuple(可迭代对象) 将可迭代对象转换为元组。

r1 = (i**2 for i in range(10))
r2 = range(10)
a = tuple(r1)
b = tuple(r2)
print("a:",a)
print("b:",b)
输出为:
a: (0, 1, 4, 9, 16, 25, 36, 49, 64, 81)
b: (0, 1, 2, 3, 4, 5, 6, 7, 8, 9)
本例中r1是生成器,r2是可迭代对象。都可以用tuple()转换为元组。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/42545.html

相关文章

  • Python全栈之路系列元组数据类型

    摘要:元组和列表的为唯一区别就是列表可以更改,元组不可以更改,其他功能与列表一样创建元组的两种方法第一种第二种如果元祖内只有一个元素,那么需要加上一个逗号,否则就变成字符串了。 元组(tuple)和列表的为唯一区别就是列表可以更改,元组不可以更改,其他功能与列表一样 创建元组的两种方法 第一种 ages = (11, 22, 33, 44, 55) 第二种 ages = tuple((11,...

    李涛 评论0 收藏0
  • Python特性元组

    摘要:通过字段名或者位置来获取一个字段的信息属性是一个包含这个类所有字段名称的元组用通过接受一个可迭代对象来生成这个类的一个实例作用跟一样把具名元组以形式返回 元组不仅仅是不可变列表 元组其实是对数据的记录:元组中的每个元素都存放了记录中一个字段的数据,外加这个字段的位置。 正是这个位置信息给数据赋予了意义 lax_coordinates = (33.9425, -118.408056)...

    CoderBear 评论0 收藏0
  • python-数据类型元组

    摘要:元组是不可以改变的序列,如果元组的元素包含列表字典是支持修改操作的。这就意味着它们通过算法得到的值总是一个值。这是作为字典键值的一个必备条件。 元组是不可以改变的序列,如果元组的元素包含列表、字典是支持修改操作的。因为不可变所以元素的修改会报错: >>> tt=(3,4,5) >>> type(tt) >>> tt[2]=4 Traceback (most recent call l...

    xiaowugui666 评论0 收藏0
  • 7、TypeScript 元组 - Tuple

    摘要:与声明数组类型类似只不过在数组基础上更加细分化每个元素示例顺序不可以颠倒长度不可以违规是固定的如果你的数组没有满足元组要求报错意思就是你的属性个在类型中缺失,但在元组中设定是必须的如果你的元素没有满足数组的长度会怎么样呢报错意思是你的数组不 与 声明数组类型 类似 只不过在 数组 基础上更加细分化每个元素 示例: let myTuple: [number, string, boo...

    rickchen 评论0 收藏0
  • Python中的类元编程

    摘要:类元编程是指在运行时创建或定制类的技艺。注意在中做元编程时最好不要用和函数。三元类基础知识元类是类元编程最高级的工具使用元类可以创建具有某种特质的全新变种,例如抽象基类。建议除非开发框架,否则不要在生产代码中定义元类或抽象基类。 导语:本文章记录了本人在学习Python基础之元编程篇的重点知识及个人心得,打算入门Python的朋友们可以来一起学习并交流。 本文重点: 1、了解运行时创建...

    alexnevsky 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<