元组怎么变成列表_Python数据类型<元组>

本文介绍了Python中的元组(tuple)数据类型,它是一种有序且不可变的序列,常用于固定不变的数据集合。学习了元组的创建方式,包括单元素元组的创建,以及如何通过内置函数将其他类型转换为元组。重点讲解了元组的访问、查找和组合操作,以及元组在函数返回值中的应用场景。
摘要由CSDN通过智能技术生成

107ab4d833a5d0c2d919946357725a98.png

Python里面的第二个数据类型叫元组,英文叫tuple,至于这是怎么翻译的就不知道了。。。总之大家都是这么叫的。这货有什么用呢

上一节介绍了列表,知道了列表就是一个有序的数据存储的结构,并且可以根据用户的需要改变内部的值

今天这个家伙的和那个差不多,也是有序的结构,但是不同的就是,一旦他建立了,就不能改变了。所以他适用于一个不需要经常改变的场合,比如一个车间有6条生产线,由于他们不会经常改变,那只需要把6条生产线的名称组成一个元组,调用它就可以了。

创建元组

首先看看元组怎么创建,从形式上看,就是所有的元素都放在一个小括号()里面,

test_tuple=(1,2,3,4,5)print(test_tuple,type(test_tuple))结果:(1, 2, 3, 4, 5) 'tuple'>

当然和列表一样,其内部的元素也可以是不同的类型

特殊的就是,如果创建的元组只有一个元素,需要在后面添加逗号,例子如下

test_tuple1=(1)test_tuple2=(1,)print(type(test_tuple1),type(test_tuple2))结果:

一个是int类型,一个是tuple类型

除了直接赋值以外,Python自带的函数也可以将字符串、列表、range等对象转换成元组类型,见例子

#将字符串转换成元组tup1 = tuple("hello world")print(tup1)结果:注意里面的空格('h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd')
#将列表转换成元组list1 = ['a', 'b', 'c ','d']tup2 = tuple(list1)print(tup2)结果:('a', 'b', 'c ', 'd')
#将字典转换成元组dict1 = {'a':10, 'b':20, 'c':30}tup3 = tuple(dict1)print(tup3)结果:只将字典的key取了出来('a', 'b', 'c')
#将区间转换成元组range1 = range(1, 5)tup4 = tuple(range1)print(tup4)

访问元组的元组这个和上一节列表的一样,这里不单独介绍。如果要查找某个元素在不在元组里面,或者索引是多少,方法也是和列表一样的,如

tup1 = (1, 2, 3, 4)1 in tup1结果:True
tup1.index(1)输出:0

修改元组

前面我们已经说过,元组是不可变序列,元组中的元素不能被修改,所以我们只能创建一个新的元组去替代旧的元组。

比如下面

tup1 = (1, 2, 3, 4)tup2 = (5, 6, 7)print(tup1+tup2)tup1=tup1+tup2print(tup1)print(tup2)结果:(1, 2, 3, 4, 5, 6, 7)(1, 2, 3, 4, 5, 6, 7)(5, 6, 7)

也就是说只能重新赋值,不能对里面的元素进行修改

除了+,还可以使用*

tup1 = (1, 2, 3, 4)tup1=tup1*3print(tup1)结果:(1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4)

元组也有几个实用的函数,可以查看长度、最大值和最小值等

tup1 = (1, 2, 3, 4)print(len(tup1))print(max(tup1))print(min(tup1))结果411

要说这家伙有什么用。。。最有用的就是可以当作函数的返回值吧。。。如

def squire_and_cube(x):    return (x*x,x*x*x)a=squire_and_cube(2)print(type(a))print(a[0],a[1])结果:<class 'tuple'>4 8
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值