Python序列之元组 (tuple)
作者博文地址:http://www.cnblogs.com/spiritman/
Python的元组与列表类似,同样可通过索引访问,支持异构,任意嵌套。不同之处在于元组的元素不能修改。元组使用小括号,列表使用方括号。
创建元组
元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可
tup1 = () #空元组
tup2 = ('a','b','c','d')
tup3 = (1,2,3,'a','b','c')
元组操作方法及实例展示
可以使用dir(tuple)查看元组支持的操作
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
index
1 功能:获取元素在元组中的索引值,对于重复的元素,默认获取从左起第一个元素的索引值
2 语法:T.index(value, [start, [stop]]) -> integer -- return first index of value.Raises ValueError if the value is not present.
3 T = ('a','b',2,'c','d',1,2,3,4)
4 T.index(2)
5 结果:2 #元素2第一次出现在索引为2的位置
6 T.index(2,3,7)
7 结果:6
T1 + T2
功能:合并两个元组,返回一个新的元组,原元组不变
语法:T = T1 + T2
T1 = ('a','b','c')
T2 = (1,2,3,4)
T = T1 + T 2
结果:
7 print T
('a','b','c',1,2,3,4)
print T1
('a','b','c')
print T2
(1,2,3,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)
2 id(T)
3 140073510482784
print T[3]
[1,2,3,4]
T[3].append(5)
print T[3]
[1,2,3,4,5]
print T
10 ('a','b','c',[1,2,3,4,5],1,2,3)
11 id(T)
12 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')
作者博文地址:http://www.cnblogs.com/spiritman/
Python序列之元组 (tuple)的更多相关文章
- python入门11 元组tuple
tuple元组是一种不可变数据类型,也是一种序列,因此可用序列的各类方法,比如切片和索引 #coding:utf-8 #/usr/bin/python """ 2018- ...
- Python中的元组(tuple)、列表(list)、字典(dict)
-------------------------------更新中-------------------------------------- 元组(tuple): 元组常用小括号表示,即:(),元 ...
- Python 创建特殊元组tuple
创建1个元素的tuple (1,) 创建单元素tupletuple和list一样,可以包含 0 个.1个和任意多个元素.包含多个元素的 tuple,前面我们已经创建过了.包含 0 个元素的 tupl ...
- 【Python⑤】python序列---list和tuple
sequence 序列 sequence(序列)是一组有顺序的对象的集合.序列可以包含一个或多个元素,也可以没有任何元素. 我们之前所说的基本数据类型,都可以作为序列的对象.对象还可以是另一个序列.序 ...
- Python序列结构--元组
元组:轻量级列表 元组创建于元素访问 >>> x = (1, 2, 3)>>> type(x)<class 'tuple'>>>> x ...
- python数据类型之元组(tuple)
元组是python的基础类型之一,是有序的. 元组是不可变的,一旦创建便不能再修改,所以叫只读列表. name = ('alex', 'jack') name[0] = 'mark' # TypeEr ...
- Python基础之元组tuple(带了枷锁的列表)
元组不能直接插入删除修改元素. 逗号是关键 创建空元组 元组的一些操作符 别忘了逗号,"*"重复操作符也可以使用 元组通过切片间接更新 插入元素,可以使用拼接操作符(“+”) &g ...
- 【笔记3-31】Python语言基础-元组tuple
创建元组 my_tuple = () my_tuple1 = 1, 2, 3, 4, 5, 6 元组解包 与元组元素数量一致 a,s,d,f,g,h = my_tuple1 a, b, c, *f = ...
- Python内置数据结构之元组tuple
1. Python序列之元组:不可修改的序列 元组其实跟列表差不多,也是存一组数,只不是它一旦创建,便不能像列表式的增删改,只能查,切片,所以元组又叫只读列表. 元组用圆括号括起(这是通常采用的做法) ...
随机推荐
- ArrayList实现原理及源码分析之JDK8
转载 ArrayList源码分析 一.ArrayList介绍 Java 集合框架主要包括两种类型的容器: 一种是集合(Collection),存储一个元素集合. 一种是图(Map),存储键/值对映射. ...
- 【Git】Git Bash
版本控制工具Git Bash软件 安装 git.exe 即可
- springboot mybatis 后台框架平台 shiro 权限 集成代码生成器
1.代码生成器: [正反双向](单表.主表.明细表.树形表,快速开发利器)+快速表单构建器freemaker模版技术 ,0个代码不用写,生成完整的一个模块,带页面.建表sql脚本.处理类.servic ...
- Tomcat出现需要输入账号和密码问题
这里是端口冲突问题: 可以做一下几个解决方案: 第一:更好Tomcat/conf/server.xml文件里面的制定8080端口号,更改为你能记住的端口数: 第二:找到冲突的端口的进程,杀死这个进程, ...
- Matlab中的“prod”函数
B = prod(A)将A矩阵不同维的元素的乘积返回到矩阵B. 如果A是向量,prod(A)返回A向量的乘积.如果A是矩阵,prod(A)将A看作列向量,返回每一列元素的乘积并组成一个行向量B.如果A ...
- 2017-2018-1 20155226 《信息安全系统设计基础》课下实践——实现mypwd
2017-2018-1 20155226 <信息安全系统设计基础>课下实践--实现mypwd 1 学习pwd命令 输入pwd命令 发现他是给出当前文件夹的绝对路径. 于是 man 1 pw ...
- c++ 有序二叉树的应用
实作:以有序二叉树记录学生签到时间及名字,然后以名字升序输出学生签到信息 stricmp,strcmpi 原型:extern int stricmp(char *s1,char * s2); 用法:# ...
- 【转载】MSXML应用总结 开发篇(下)
原文:http://blog.sina.com.cn/s/blog_48f93b530100eq4b.html 三.查询XML文档节点 这部分属于“读”XML文档并做节点遍历,由于担心加上实例会占用过 ...
- 7-[多线程]-Event、定时器、队列、堆栈
1.Event对象 线程的一个关键特性是每个线程都是独立运行且状态不可预测. 如果程序中的其他线程需要通过判断某个线程的状态来确定自己下一步的操作,这时线程同步问题就会变得非常棘手. 为了解决这些问题 ...
- 面试题-python基础
一.Python基础 1.什么是python?使用python有什么好处? python是一种编程语言,它有对象.模块.线程.异常处理和自动内存管理.它简洁,简单.方便.容易扩展.有许多自带的数据结果 ...