python3 元组 tuple 操作

元组被称为只读列表,数据可被查询,但不能被修改,类似于列表的切片操作,元组写在小括号里面()元素之前用逗号隔开,对于一些不想被修改的数据,可以用元组来保存

创建元组

1:创建空元组

tup = ()
print("{0}{1}".format(tup, type(tup)))
#() <class 'tuple'>

2:创建只带一个元素的元组,在后边添加一个逗号

tup = (1,) #元组中只有一个元素时,在元素后面加上逗号,否则会被当成其他数据类型处理
print("{0}{1}".format(tup, type(tup))) #使用type()查看变量类型.
#(1,) <class 'tuple'>

3:创建带多个元素的元组

tup = (1, 2, ['a', 'b', 'c'], 3, 4)
print("{}".format(tup))
# (1, 2, ['a', 'b', 'c'], 3, 4)

4:将列表转化为元组

listVar = ['zhangsan', 'lisi', 'wanger']
tupVar = tuple(listVar)
print("{0}{1}".format(type(listVar), type(tupVar)))
print(tupVar)
# <class 'list'><class 'tuple'>
# ('zhangsan', 'lisi', 'wanger')

查询

tup = (1, 2, ['a', 'b', 'c'], 'd', 'e', ('gu', 'tang'))

print ("tup[0] =",tup[0]) # 打印索引为0的元素
#输出结果
tup[0] = 1

print ("tup[1:] =",tup[1:])   #从索引为1到最后一个元素
#输出结果
tup[1:] = (2, ['a', 'b', 'c'], 'd', 'e', ('gu', 'tang'))

print ("tup[:-1] =",tup[:-1])  # 到倒第二个元素但不包含第二个
#输出结果
tup[:-1] = (1, 2, ['a', 'b', 'c'], 'd', 'e')

print ("tup[1::1] =",tup[1::1]) # 等价于tup[1:]   从左到右一个个去取,步长为1
#输出结果
tup[1::1] = (2, ['a', 'b', 'c'], 'd', 'e', ('gu', 'tang'))

print ("tup[1::2] =",tup[1::2]) #从左到右隔一个去取  步长为2
#输出结果
tup[1::2] = (2, 'd', ('gu', 'tang'))

print ("tup[::-1]",tup[::-1])   # 反向输出 步长为1
#输出结果
tup[::-1] (('gu', 'tang'), 'e', 'd', ['a', 'b', 'c'], 2, 1)

print ("tup[::-2]",tup[::-2])   # 反向输出 步长为2(隔一个去取))
#输出结果
tup[::-2] (('gu', 'tang'), 'd', 2)

删除

del
元素对象不支持删除,但是可以删除整个元组变量

# del 删除元组中元素
up = ('tang', 'guo', 'li','xiu')
del tup[0]  #   元素对象不支持删除
# print (tup)

#输出结果
TypeError: 'tuple' object doesn't support item deletion
tup = ('tang', 'guo', 'li','xiu')
del tup  #删除
print (tup) # del tup ,内存已删除,在打印将提示未定义

#输出结果
NameError: name 'tup' is not defined

统计元素个数

count()

tup = ('zhangsan', 'wanger', 'lisi', 'wanger')
print("{0}".format(tup.count('wanger')))
# 2

返回元素索引位置

index()

tup = ('wanger', 'lisi', 'zhangsan')
print("{0}".format(tup.index('wanger')))
# 0

计算元组中元素的个数

len()

tup = ('zhangsan', 'lisi', 'wanger')
print("{0}".format(len(tup)))
# 3

注意事项

1、当元组中一个元素时,一定要在元素后面加上逗号
2、元组中的元素是不允许删除的,但可以使用del语句来删除整个元组
3、元组没有列表中的增、删、改的操作,只有查的操作

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值