跟阿彩一起学习Python(六)

本文深入探讨Python中的元组,包括元组的创建、组合、列表与元组之间的转换、访问元素、不可变性、内存管理机制、截取、长度、最大值和最小值。通过实例展示了元组与列表的区别,强调了元组在数据结构中的独特作用。
摘要由CSDN通过智能技术生成

前言

分享是我学习的最大动力。


二、元组

Python 的元组与列表类似。从语法格式的角度,元组使用小括号 ( ),列表使用方括号 [ ]。而两者最大的不同之处在于元组的元素不能修改。

回顾一下列表的语法,并和元组对比一下。
列表代码演示:

ListEx = ['daguai', 'xiaoguai', 'aoliao', 25, True]
print(ListEx)

输出:[‘daguai’, ‘xiaoguai’, ‘aoliao’, 25, True]

元组代码演示:

TupleEx=('daguai', 'xiaoguai', 'aoliao', 25, True)
print(TupleEx)

输出:(‘daguai’, ‘xiaoguai’, ‘aoliao’, 25, True)

元组的组合

运行一下代码吧:

ages=(23,34,55,67,76)
names=('daguai','xiaoguai','aoliao')
namesAages=ages+names
print(namesAages)

列表和元组的强转换

lnums=[23,34,56,67]
print(type(lnums)) # 输出:<class 'list'>
tnums=tuple(lnums)
print(type(tnums)) # 输出:<class 'tuple'>

输出元组的元素

元组可以使用下标索引来访问元组中的值,正向下标索引:

ages=(23,34,55,67,76)
print(ages[0]) # 输出:23
print(ages[1]) # 输出:34
print(ages[2]) # 输出:55
print(ages[3]) # 输出:67
print(ages[4]) # 输出:76

负向下标索引:

ages=(23,34,55,67,76)
print(ages[-1]) # 输出:76
print(ages[-2]) # 输出:67
print(ages[-3]) # 输出:55
print(ages[-4]) # 输出:34
print(ages[-5]) # 输出:23

元组不能够修改元素

以下代码调试不通过:
TypeError: ‘tuple’ object does not support item assignment

tnums=(23,34,56,67)
tnums[0]=90
print(tnums)

元组里面的List可以被修改

testtl=(23,44,55,66,[23,33,33,'aaa'])
print(testtl) 
# 输出:(23, 44, 55, 66, [23, 33, 33, 'aaa'])
testtl[4][1]=90
print(testtl)
# 输出:(23, 44, 55, 66, [23, 90, 33, 'aaa'])

了解一下元组的内存管理机制即可以明白。

元组的元素不可追加

List可以先定义,再添加内容。元组则不可以如下使用。

listest=[]
listest.append(1)
print(listest)

删除元组

元组中的元素值是不允许删除的,但我们可以使用del语句来删除整个元组。

testtl=(23,44,55,66,[23,33,33,'aaa'])
print(testtl) # 先运行以上,输出元组元素
del testtl
print(testtl)

del之后,运行报错:
NameError: name ‘testtl’ is not defined

截取元组

从某个下标开始截取之后的所有元素。

testtl=(23,44,55,66,[23,33,33,'aaa'])
print(testtl[1:])

输出:(44,55,66,[23,33,33,‘aaa’])

testtl=(23,44,55,66,[23,33,33,'aaa'])
print(testtl[1:3])

输出:(23,44,55,66)

元组的长度

testtl=(23,44,55,66,[23,33,33,'aaa'])
print(len(testtl)) 

输出:5

元组的最大值

testtl=(23,44,55,66,99)
print(max(testtl))  输出:99

元组的最小值

testtl=(23,44,55,66,99)
print(min(testtl))  输出:23

总结

上班了,学习时间少了,忙里偷闲,挤时间更新。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值