python之元组(tuple)详细介绍
python之元组详细介绍
- 1.元组基本概念
- 2.元组操作
- 2.1 元组创建
- 2.2 元组解包
- 2.3 更新和删除元组
- 3.元组tuple和列表list的区别
- 3.1 元组tuple和列表list的相同点
- 3.2 元组tuple和列表list的不同点
1.元组基本概念
(1)定义:元组是⼀个不可变序列(⼀般当我们希望数据不改变时,我们使⽤元组,其他情况下基本都⽤列表)
(2)表现形式:tuple()
2.元组操作
2.1 元组创建
使用()创建元素
元组不是空元组⾄少有⼀个 逗号(,) 当元组不是空元组时括号可以省略
tuple函数将其他类型转为元组
my_tuple1 = () # 创建空列表
my_tuple2 = (1,2,3,4,5) # 创建int元素的列表
my_tuple3 = ('a','b','c','d') # 创建str元素的列表
my_tuple4 = ('a',1,True,None) # 创建混合列表
print(my_tuple1,my_tuple2,my_tuple3,my_tuple4)
my_tuple5 = 1,
print(type(my_tuple5)) #<class 'tuple'>
my_tuple6 = 1,2,3,4
print(type(my_tuple6)) #<class 'tuple'>
a = [1,2,3]
b = 'abc'
c = tuple(a)
d = tuple(b)
print(c,' ', type(c)) # tuple函数将列表转为元组,结果(1, 2, 3) <class 'tuple'>
print(d,' ', type(d)) # tuple函数将字符串转为元组,结果('a', 'b', 'c') <class 'tuple'>
2.2 元组解包
元组解包就是指将元组当中的每一个元素都赋值给变量
my_tuple = (1,2,3,4)
a,b,c,d = my_tuple
print('a =',a)
print('b =',b)
print('c =',c)
print('d =',d)
- 在元组解包时 变量的数量必须和元组中元素要一一对应
- 如果出现变量和元素没有对等的情况下,我们可以在变量前面加个*
- 这样变量就会讲获取元组中所有剩余的元素以列表形式返回
# 在元组解包时 变量的数量必须和元组中元素要一一对应
# 如果出现变量和元素没有对等的情况下,我们可以在变量前面加个*
# 这样变量就会讲获取元组中所有剩余的元素以列表形式返回
my_tuple = 10,20,30,40
# a,b,c = my_tuple # 报错。too many values to unpack (expected 3)
a,b,*c = my_tuple
print('a =',a) # a = 10
print('b =',b) # b = 20
print('c =',c) # c = [30,40]a,*b,c = my_tuple
print('a =',a) # a = 10
print('b =',b) # b = [20,30]
print('c =',c) # c = 40*a,b,c = my_tuple
print('a =',a) # a = [10, 20]
print('b =',b) # b = 30
print('c =',c) # c = 40
2.3 更新和删除元组
- 元组是不可以改变的。但是可以通过拷贝现有的元组片段构造一个新的元组的方式解决。
- 通过分片的方法让元组拆分成两部分,然后再使用连接操作符(+)合并成一个新元组,最后将原来的变量名(temp)指向连接好的新元组。在这里就要注意了,逗号是必须的,小括号也是必须的!
temp = ("龙猫","泰迪","叮当猫")
temp = temp[:2] + ("小猪佩奇",)+temp[2:]
print(temp) # 结果:('龙猫', '泰迪', '小猪佩奇', '叮当猫')
- 同理,删除元组中的元素:对于元组是不可变的原则来说,单独删除一个元素是不可能的,当然你可以利用切片的方式更新元组,间接的删除一个元素。
temp = ('龙猫', '泰迪', '小猪佩奇', '叮当猫')
temp = temp[:2] + temp[3:]
print(temp) # 结果:('龙猫', '泰迪', '叮当猫')# 也可以通过del
temp = ('龙猫', '泰迪', '小猪佩奇', '叮当猫')
del temp
print(temp) #报错:
NameError: name 'temp' is not defined
3.元组tuple和列表list的区别
3.1 元组tuple和列表list的相同点
- in 和 not in
'''
# in 和 not in
# in 表示用来检查指定元素是否在列表当中,如果在返回True,如果不在返回False
# not in 表示用来检查指定元素是否不在列表当中,如果不在返回True,如果在返回False
'''hero = ['钢铁侠','绿巨人','蜘蛛侠','黑寡妇','蚁人','美国队长'] # 创建hero列表
print('钢铁侠' in hero) # 返回True
print('钢铁侠' not in hero) # 返回Falsehero = ('钢铁侠','绿巨人','蜘蛛侠','黑寡妇','蚁人','美国队长') # 创建hero元组
print('钢铁侠' in hero) # 返回True
print('钢铁侠' not in hero) # 返回False
- python内置常用函数
- 元组调用方法
a = 5,2,3,4
print(a[0]) # 5
a = sorted(a,reverse = True)
print(a) # [5, 4, 3, 2]print(a.count(1)) # 计算元素1出现的次数
print(a.index(5)) # 寻找元素5的索引
a = a.sort() # 排序,不能
print(a) # 输出为None
3.2 元组tuple和列表list的不同点
- 列表一旦创建了我们就可以根据自己的需要随意改变它的内容,我们可以给列边添加新的数据来增加其大小。
l = [1, 2, 3, 4, 5, 6]
l[0] = l[2] * l[3]
print(l) # [12, 2, 3, 4, 5, 6]
len(l) # 6
l.append(7) # [12, 2, 3, 4, 5, 6, 7]
len(l) # 7
- 元组是固定且不可改变的。这意味着一旦元组被创建,和列表不同,它的内容无法被修改或它的大小也无法被改变。
>>> t = (1, 2, 3, 4)
>>> t[0] = 5
Traceback (most recent call last):File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment
虽然它们不支持改变大小,但是我们可以将两个元组合并成一个新元组。这一操作类似列表的resize操作,但我们不需要为新生的元组分配任何额外的空间:
>>> t1 = (1, 2, 3, 4)
>>> t2 = (5, 6, 7, 8)
>>> t1 + t2
(1, 2, 3, 4, 5, 6, 7, 8)
一般情况下希望数据不改变,就用元组,其余情况都用列表
python之元组(tuple)详细介绍相关推荐
- pythontuple数据类型_Python数据类型之元组的详细介绍
本篇文章给大家带来的内容是关于Python数据类型之元组的详细介绍,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 1.元组的概念python中的元组是有序元素组成的集合,与列表的区别 ...
- python学习-元组tuple(定义、删除、长度、复制、查找、遍历、operator,和列表的区别)
元组tuple 元组的创建 元组的使用 使用进阶 元组和列表的区别 元组的创建 Python的元组与列表类似,不同之处在于元组的元素不能修改. 元组的创建,使用()或在定义变量以后添加一个逗号(,) ...
- Python(17)-元组tuple
高级数据类型--元组 1.元组的定义 2.元组基本操作 3.元组的循环遍历 4.元组的应用场景 5.元组与格式化字符串 6.元组与列表之间的转换 元组的最大特征就是可访问不可改,可作为字典的键值,因为 ...
- python位运算符_详细介绍Python语言中的按位运算符
按位运算符是把数字看作二进制来进行计算的.Python中的按位运算法则如下: 按位与 ( bitwise and of x and y ) & 举例: 5&3 = 1 解释: 101 ...
- python基础--元组,字典介绍(六)
# range() 是一个函数,可以用来生成一个自然数的序列 r = range(5) #r = range(10) # 该函数需要三个参数, # 起始位置 # 结束位置 # 步长 r = range ...
- Python的元组(tuple)类型
文章目录 1. 元组 1.1 定义 1.2 独有功能 1.3 公共功能 1.3.1 相加 1.3.2 相乘 1.3.3 获取长度 1.3.4 索引 1.3.4 切片.步长 1.3.5 for循环 1. ...
- Python 中的Sympy详细介绍
Python 中的Sympy详细使用 遇到复杂计算找python绝对不让你失望,sympy是一个Python的科学计算库,用一套强大的符号计 ...
- [转载] python中元组(tuple)用法总结
参考链接: Python | tuple函数 一.tuple也是一个class,是不可变的list类型,不可以增删改. 创建: tup1 = ('physics', 'chemistry', 1997 ...
- python中元组(tuple)用法总结
一.tuple也是一个class,是不可变的list类型,不可以增删改. 创建: tup1 = ('physics', 'chemistry', 1997, 2000); tup2 = (1, 2, ...
最新文章
- 三维的对象表示---OpenGL二次曲面和三次曲面函数
- 揭开隐藏数据的面纱,优化应用程序性能(转)
- pb 动态改变DW的WHERE子句
- nginx离线安装_web高可用-基于keepalived和nginx
- 虚拟机网络桥接-NAT-HOST的理解
- CSS 自定义属性 -- 使用 JS 和不使用 JS
- 写一个函数,首先要明确是完成一个流程,还是一个功能
- STL-关联式容器 map
- rslinx连接linux教程,RSLinx Classic软件通讯配置教程
- 在线画图工具 免费
- 如何删除ie浏览器缓存文件、缓存js
- AppEmit是应用程序(尤其是浏览器)与本地程序间互相通信的易扩展的轻量级中间件
- Word中怎么批量修改所有表格样式
- win10 调用计算机,win10系统打开软件总提示是否允许程序修改计算机的解决方法...
- CNN网络结构发展演变:从LeNet到HRNet(一)
- Computer Shader
- 单片机应用系统设计技术——基于51单片机篮球计时计分器的设计
- 宏基因组学数据分析在生物医学领域的应用
- 哈佛商业评论:什么是颠覆性创新?
- 多项式除法终极方法:长除法 VS 综合除法