python元组

创建元组

元组的创建使用小括号()

创建空元组:tuple()

可以使用tuple()函数和range()函数来生成数值元组。

注意:当元组中只包含一个元素时,需要在元素后面添加逗号,否则括号会被当作运算符使用。

python 复制代码
tuple1=(12,)

tuple2=tuple(range(10))

访问元组

1.使用下标索引

2.使用切片的方式

3.使用for循环实现元组遍历

python 复制代码
tuple1=('apple','orange','kiwi')

print(tuple1[0])

print(tuple[:2])

for i in tuple1:
    print(i)

修改元组

元组中的元素值不允许修改

但是元组可以进行连接组合,或对元组进行重新赋值来改变元组的值

python 复制代码
tuple1=(1,2,3,4,5)
tuple2=(6,7,8,9)
tuple3=tuple1+tuple2
print(tuple3)

tuple1=(3,4,5)
print(tuple1)

#(1, 2, 3, 4, 5, 6, 7, 8, 9)
#(3, 4, 5)

删除元组

无法删除元组中的部分元素,只能用del命令删除整个元组

元组推导式

使用元组推导式生成元组时,要在前加上tuple()

python 复制代码
tuple1=(x for x in range(10))
print(tuple1)

#<generator object <genexpr> at 0x000001AEB12C4E80>

tuple1=(x for x in range(10))
print(tuple(tuple1))

#(0,1,2,3,4,5,6,7,8,9)

元组常用内置函数

len(tuple) 计算元组中元素个数

max(tuple) 返回元组中的最大值

min(tuple) 返回最小值

tuple(seq) 将列表转换成元组

元组与列表的区别

1.列表属于可变序列,元组属于不可变序列,不能添加删除元素

2.两者都支持切片操作,但列表支持用切片方式修改其中的元素,而元组不支持

3.元组作为不可变序列,与整数,字符串一样可以作为字典的键,而列表不可以。

序列封包和序列解包

将多个值赋给一个变量时,python会自动将多个值封装成一个元组,这种功能是序列封包。

python 复制代码
values=1,2,3
print(values)
print(type(values))

#(1,2,3)
#<class'tuple'>

序列,元组或列表直接赋值给多个变量,此时序列的个元素会被依次赋值给每,(要求其对应数量相等)个变量,这种功能被称为序列解包 。

python 复制代码
tuple1=tuple(range(1,10,2))
print(tuple1)

a,b,c,d,e=tuple1
print(a,b,c,d,e)

#(1, 3, 5, 7, 9)
#1 3 5 7 9
相关推荐
ZSYP-S8 分钟前
Day 15:Spring 框架基础
java·开发语言·数据结构·后端·spring
yuanbenshidiaos12 分钟前
c++------------------函数
开发语言·c++
程序员_三木24 分钟前
Three.js入门-Raycaster鼠标拾取详解与应用
开发语言·javascript·计算机外设·webgl·three.js
是小崔啊34 分钟前
开源轮子 - EasyExcel01(核心api)
java·开发语言·开源·excel·阿里巴巴
tianmu_sama40 分钟前
[Effective C++]条款38-39 复合和private继承
开发语言·c++
黄公子学安全43 分钟前
Java的基础概念(一)
java·开发语言·python
liwulin050643 分钟前
【JAVA】Tesseract-OCR截图屏幕指定区域识别0.4.2
java·开发语言·ocr
jackiendsc1 小时前
Java的垃圾回收机制介绍、工作原理、算法及分析调优
java·开发语言·算法
Oneforlove_twoforjob1 小时前
【Java基础面试题027】Java的StringBuilder是怎么实现的?
java·开发语言
羚羊角uou1 小时前
【C++】优先级队列以及仿函数
开发语言·c++