(四)元组

本文转自:http://www.cnblogs.com/spiritman/p/5141824.html


Python的元组与列表类似,同样可通过索引访问,支持异构,任意嵌套。不同之处在于元组的元素不能修改。元组使用小括号,列表使用方括号。
创建元组

元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可

  tup1 = ()          #空元组

  tup2 = (2,)          #元组中只包含一个元素时,需要在元素后面添加逗号来消除歧义

  tup3 = (‘a’,’b’,’c’,’d’)

  tup4 = (1,2,3,’a’,’b’,’c’)
  
  
  
元组操作方法及实例展示:
可以使用dir(tuple)查看元组支持的操作
1、count

功能:统计元组中某元素的个数
语法:T.count(value) -> integer -- return number of occurrences of value
T = ('a','b','c','d',1,2,2,3,4)
T.count(2)
结果:2

2、index

功能:获取元素在元组中的索引值,对于重复的元素,默认获取从左起第一个元素的索引值
语法:T.index(value, [start, [stop]]) -> integer -- return first index of value.Raises ValueError if the value is not present.
T = ('a','b',2,'c','d',1,2,3,4)
T.index(2)
结果:2        #元素2第一次出现在索引为2的位置
T.index(2,3,7)
结果:6

3、T1 + T2

功能:合并两个元组,返回一个新的元组,原元组不变
语法:T = T1 + T2
T1 = ('a','b','c')
T2 = (1,2,3,4)
T = T1 + T 2
结果:
print T
('a','b','c',1,2,3,4)
print T1
('a','b','c')
print T2
(1,2,3,4)

4、T1 * N

功能:重复输出元组N次,返回一个新元组,原元组不变
语法:T = T1 * N
T1 = ('a','b',1,2,3)
T = T1 * 3
结果:
print T
('a','b',1,2,3,'a','b',1,2,3,'a','b',1,2,3)
print T1
('a','b',1,2,3)

元组虽然不可变,但是当元组中嵌套可变元素时,该可变元素是可以修改的,元组本身不变,使用id(tuple)查看。

T = ('a','b','c',[1,2,3,4],1,2,3)
id(T)
140073510482784
print T[3]
[1,2,3,4]
T[3].append(5)
print T[3]
[1,2,3,4,5]
print T
('a','b','c',[1,2,3,4,5],1,2,3)
id(T)
140073510482784

元组支持切片操作

语法:T[start [, stop[, step]]]
实例演示:
T = ('a','b','c','d','e','f','g','h')
print T[:]                          #取所有元素
('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h')
print T[2:]                         #取从索引2开始到末尾的元素
('c', 'd', 'e', 'f', 'g', 'h')
print T[2:6]                        #取索引2到6的所有元素,不包含索引6
('c', 'd', 'e', 'f')
print T[2:6:2]                      #从索引2到6,每隔一个元素取一个
('c', 'e')
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值