初步讲解Python中的元组概念


Posted in Python onMay 21, 2015

 元组是不可变的Python对象序列。元组的序列就像列表。唯一的区别是,元组不能被改变,即元组是不可被修改。元组使用小括号,而列表使用方括号。

创建一个元组很简单,只要把不同的逗号分隔值,可以把括号中的这些逗号来分隔每个值。例如:

tup1 = ('physics', 'chemistry', 1997, 2000);
tup2 = (1, 2, 3, 4, 5 );
tup3 = "a", "b", "c", "d";

空的元组写为含有两对称括号:

tup1 = ();

要元组中包含一个值,必须有一个逗号,即使只有一个值的元组:

tup1 = (50,);

如字符串索引,元组索引从0开始,元组可以切片,联接等。
访问元组的值:

要访问元组的值,使用方括号沿切片及索引或索引来获得可用的索引对应的值。下面是一个简单的例子:

#!/usr/bin/python

tup1 = ('physics', 'chemistry', 1997, 2000);
tup2 = (1, 2, 3, 4, 5, 6, 7 );

print "tup1[0]: ", tup1[0]
print "tup2[1:5]: ", tup2[1:5]

当执行上面的代码,产生以下结果:

tup1[0]: physics
tup2[1:5]: [2, 3, 4, 5]

更新元组:

元组是不可变的,这意味着不能更新或更改元组元素的值。但可以利用现有的元组的部分来创建新的元组,如下例所示:

#!/usr/bin/python

tup1 = (12, 34.56);
tup2 = ('abc', 'xyz');

# Following action is not valid for tuples
# tup1[0] = 100;

# So let's create a new tuple as follows
tup3 = tup1 + tup2;
print tup3;

当执行上面的代码,产生以下结果:

(12, 34.56, 'abc', 'xyz')

删除的元组元素:

除去各个元组的元素是不可能的。当然,一个元组与丢弃不想要的元素放在一起没有错。

要明确地删除整个元组,只要使用del语句。下面是一个简单的例子:

#!/usr/bin/python

tup = ('physics', 'chemistry', 1997, 2000, hema);

print tup;
del tup;
print "After deleting tup : "
print tup;

这将产生以下结果。注意引发异常,这是因为经过del tup元组就不存在了:

('physics', 'chemistry', 1997, 2000)
After deleting tup :
Traceback (most recent call last):
 File "test.py", line 9, in <module>
  print tup;
NameError: name 'tup' is not defined

元组的基本操作:

元组的 + 和 * 运算符回应就像字符串中一样; 他们串联和重复功能在这里也一样,不同的是,结果是一个新的记录,而不是字符串。

实际上,元组响应所有我们使用在现有章字符串的一般操作顺序:

初步讲解Python中的元组概念

 索引,切片和矩阵:

因为元组序列,索引和切片与字符串的工作方式相同。假设下面输入:

L = ('spam', 'Spam', 'SPAM!')

初步讲解Python中的元组概念

 无封闭分隔符:

任何一组多个对象,以逗号分隔,不写识别符号,即括号内的列表,括号中的元组等,默认为元组,在下面这个短短的例子说明:

#!/usr/bin/python

print 'abc', -4.24e93, 18+6.6j, 'xyz';
x, y = 1, 2;
print "Value of x , y : ", x,y;

当执行上面的代码,产生以下结果:

abc -4.24e+93 (18+6.6j) xyz
Value of x , y : 1 2
Python 相关文章推荐
遍历python字典几种方法总结(推荐)
Sep 11 Python
利用Tkinter(python3.6)实现一个简单计算器
Dec 21 Python
Python采集代理ip并判断是否可用和定时更新的方法
May 07 Python
对PyTorch torch.stack的实例讲解
Jul 30 Python
PyQt QListWidget修改列表项item的行高方法
Jun 20 Python
解决Django中多条件查询的问题
Jul 18 Python
django多个APP的urls设置方法(views重复问题解决)
Jul 19 Python
初次部署django+gunicorn+nginx的方法步骤
Sep 11 Python
python日志模块logbook使用方法
Sep 19 Python
查看keras各种网络结构各层的名字方式
Jun 11 Python
Python 日期与时间转换的方法
Aug 01 Python
用python爬虫批量下载pdf的实现
Dec 01 Python
Linux下使用python自动修改本机网关代码分享
May 21 #Python
Python字符串逐字符或逐词反转方法
May 21 #Python
Python合并字符串的3种方法
May 21 #Python
在Python中使用sort()方法进行排序的简单教程
May 21 #Python
Python去除字符串两端空格的方法
May 21 #Python
在Python中处理列表之reverse()方法的使用教程
May 21 #Python
Python中字符串对齐方法介绍
May 21 #Python
You might like
用PHP制作静态网站的模板框架(三)
2006/10/09 PHP
PHP小教程之实现双向链表
2014/06/12 PHP
几个实用的PHP内置函数使用指南
2014/11/27 PHP
PHP读取文件内容的五种方式
2015/12/28 PHP
JavaScript 直接操作本地文件的实现代码
2009/12/01 Javascript
基于jquery的地址栏射击游戏代码
2011/03/10 Javascript
window.onload和$(function(){})的区别介绍
2013/10/30 Javascript
javascript(js)的小数点乘法除法问题详解
2014/03/07 Javascript
使用jQuery的attr方法来修改onclick值
2014/07/07 Javascript
js实现简单折叠、展开菜单的方法
2015/08/28 Javascript
jQuery+PHP+Mysql实现抽奖程序
2020/04/12 jQuery
Vue下路由History模式打包后页面空白的解决方法
2018/06/29 Javascript
Web安全之XSS攻击与防御小结
2018/12/13 Javascript
简单了解JavaScript arguement原理及作用
2020/05/28 Javascript
python字符串连接方式汇总
2014/08/21 Python
python实现按行切分文本文件的方法
2016/04/18 Python
将pandas.dataframe的数据写入到文件中的方法
2018/12/07 Python
postman模拟访问具有Session的post请求方法
2019/07/15 Python
Python socket聊天脚本代码实例
2020/01/02 Python
python用pip install时安装失败的一系列问题及解决方法
2020/02/24 Python
Python 实现国产SM3加密算法的示例代码
2020/09/21 Python
使用CSS媒体查询(Media Queries)和JavaScript判断浏览器设备类型的方法
2014/04/03 HTML / CSS
实例讲解CSS3中Transform的perspective属性的用法
2016/04/22 HTML / CSS
css3实现冲击波效果的示例代码
2018/01/11 HTML / CSS
详解HTML5布局和HTML5标签
2020/10/26 HTML / CSS
美国演唱会订票网站:Ticketmaster美国
2017/10/05 全球购物
美国Max仓库:Max Warehouse
2020/05/31 全球购物
PHP高级工程师面试问题推荐
2013/01/18 面试题
高考备战决心书
2014/03/11 职场文书
经典婚礼主持开场白
2014/03/13 职场文书
敬老院献爱心活动总结
2014/07/08 职场文书
房地产销售员岗位职责
2015/04/11 职场文书
2015小学师德工作总结
2015/07/21 职场文书
安全生产奖惩制度
2015/08/06 职场文书
小学安全教育主题班会
2015/08/12 职场文书
详解 TypeScript 枚举类型
2021/11/02 Javascript