初步讲解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 相关文章推荐
在Django的模型和公用函数中使用惰性翻译对象
Jul 27 Python
Python下rrdtool模块的基本使用方法
Nov 13 Python
判断网页编码的方法python版
Aug 12 Python
Django中Model的使用方法教程
Mar 07 Python
Django Sitemap 站点地图的实现方法
Apr 29 Python
win10环境下配置vscode python开发环境的教程详解
Oct 16 Python
python 创建一维的0向量实例
Dec 02 Python
Python 矩阵转置的几种方法小结
Dec 02 Python
python二维键值数组生成转json的例子
Dec 06 Python
解决Keras 与 Tensorflow 版本之间的兼容性问题
Feb 07 Python
用Python绘制漫步图实例讲解
Feb 26 Python
Python爬取科目四考试题库的方法实现
Mar 30 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
2020最新CPU的性能排名
2020/04/02 数码科技
php下实现在指定目录搜索指定类型文件的函数
2008/10/03 PHP
PHP 定界符 使用技巧
2009/06/14 PHP
PHP人民币金额转大写实例代码
2015/10/02 PHP
php+ajax实现无刷新的新闻留言系统
2020/12/21 PHP
Yii支持多域名cors原理的实现
2018/12/05 PHP
在html页面上拖放移动标签
2010/01/08 Javascript
Extjs 几个方法的讨论
2010/01/28 Javascript
javascript 延迟加载技术(lazyload)简单实现
2011/01/17 Javascript
jquery slibings选取同级其他元素的实现代码
2013/11/15 Javascript
jQuery中操控hidden、disable等无值属性的方法
2014/01/06 Javascript
node.js中的fs.link方法使用说明
2014/12/15 Javascript
JavaScript合并两个数组并去除重复项的方法
2015/06/13 Javascript
多种JQuery循环滚动文字图片效果代码
2020/06/23 Javascript
JS基于构造函数实现的菜单滑动显隐效果【测试可用】
2016/06/21 Javascript
简单理解js的prototype属性及使用
2016/12/07 Javascript
Vue.js 单页面多路由区域操作的实例详解
2017/07/17 Javascript
AngularJS中控制器函数的定义与使用方法示例
2017/10/10 Javascript
微信小程序实战篇之购物车的实现代码示例
2017/11/30 Javascript
浅谈Vue Element中Select下拉框选取值的问题
2018/03/01 Javascript
vue-auto-focus: 控制自动聚焦行为的 vue 指令方法
2018/08/25 Javascript
js实现打字小游戏
2019/12/17 Javascript
Python subprocess模块功能与常见用法实例详解
2018/06/28 Python
Python爬取商家联系电话以及各种数据的方法
2018/11/10 Python
python 在某.py文件中调用其他.py内的函数的方法
2019/06/25 Python
python实现通过flask和前端进行数据收发
2019/08/22 Python
使用CSS3中的calc()属性来以算式表达尺寸数值
2016/06/06 HTML / CSS
Waterford加拿大官方网站:世界著名的水晶杯品牌
2016/11/01 全球购物
什么叫应用程序域?什么是托管代码?什么是强类型系统?什么是装箱和拆箱?什么是重载?CTS、CLS和CLR分别作何解释?
2012/05/23 面试题
宿舍卫生检讨书
2014/01/16 职场文书
教育科研先进个人材料
2014/01/26 职场文书
中文师范生自荐信
2014/01/30 职场文书
高中军训感言600字
2014/03/11 职场文书
开工仪式策划方案
2014/05/23 职场文书
SpringCloud之@FeignClient()注解的使用方式
2021/09/25 Java/Android
数据分析数据库ClickHouse在大数据领域应用实践
2022/04/03 MySQL