1、元组创建

 tup1 = ('physics', 'chemistry', 1997, 2000)
tup2 = (1, 2, 3, 4, 5 )
tup3 = "a", "b", "c", "d"
tup4 =() #创建空元祖
tup5=(50,)#元组中只包含一个元素时,需要在元素后面添加逗号
tup6=50,
list1=[34,123,1]
tup7=tuple(list1)

2、元祖访问

 tup1 = ('physics', 'chemistry', 1997, 2000)
print(tup1[0]) #使用下标索引来访问元组中的值

3、元组操作

tup1 = (12, 34.56)
tup2 = ('abc', 'xyz')
tup3 = tup1 + tup2 #对元组进行连接组合
del tup1 #删除元组
tup4=('Hi!',) * 4 #元组复制
cnt=len((1, 2, 3)) #计算元素个数
isin=3 in (1, 2, 3) #元素是否存在
for x in (1, 2, 3): #元组迭代
print x
a=max(tup1) #最大元素
b=min(tup1) #最小元素

4、元组解包

 tup=(1,2,3)
a,b,c=tup

5、值交换

 a='wer'
b='dfgh'
a,b=b,a

6、元组与列表

①元组不可修改,列表可修改

②元组占用空间小

③可以将元祖用作字典的键

④命名元组可以作为对象的替代

⑤函数参数是以元组形式传递的

7、命名元组

命名元组是元组的子类,既可以通过.name访问值,也可以通过位置下标访问。

from collections import namedtuple
Duck=namedtuple('Duck','bill tail')
duck=Duck('wide orange','long')
>>>duck
Duck(bill='wide orange',tail='long')
>>>duck.bill
wide orange
>>>duck.tail
long

也可以使用字典来构造:

parts={'bill':'wide orange','tail':'long'}
duck2=Duck(**parts)
>>>duck
Duck(bill='wide orange',tail='long')

其中**parts是个关键词变量,作用是将parts字典中的键值抽取出来作为参数提供给Duck()使用。等价于:

duck2=Duck(bill='wide orange',tail='long')

命名元组不可变,但可以替换其中某些域的值并返回一个新的命名元组:

duck3=duck2._replace(tail='magnificent',bill='asdasd')

命名元组无法通过,name添加新的域。

命名元组的好处:

  • 和不可变对象相似
  • 与使用对象相比,使用命名元组在时间和空间上效率更高
  • 可以使用.对属性进行访问,而不需要使用字典风格的方括号
  • 可以作为字典的键

python之元组操作的更多相关文章

  1. Python:元组操作总结

    Python的元组和列表类似,不同之处在于元组中的元素不能修改(因此元组又称为只读列表),且元组使用小括号而列表使用中括号,如下: tup1=('physics','chemistry',1997,2 ...

  2. 关于python的元组操作

    关于元组: 元组和列表是类似的,但是元组中的数据是不可以修改的. 元组是一对 () 元组操作: 元组是不可以修改的所以对元组的操作极少 定义空元组(因为元组一旦创建,数据不可被修改,所以极少创建空元组 ...

  3. python基础 - 元组操作

    元组 tuple 元组是不可变对象. 元组初始化 t = tuple() t = () t = tuple(range(1,7,2)) t = (1,2,3,4,5,1) t = (1,) t = ( ...

  4. python的元组数据类型及常用操作

    Python的元组与列表类似,不同之处在于元组的元素不能修改. 元组使用小括号,列表使用方括号. 元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可. 如下实例: tup1 = ('physi ...

  5. Python基础——列表、元组操作

    列表.元组操作 列表: 列表是Python中最基本的数据结构,列表是最常用的Python数据类型,列表的数据项不需要具有相同的类型.列表中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0 ...

  6. python基础之 列表、元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码

    本节内容 列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 1. 列表.元组操作 列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储.修改等操作 定义列表 ...

  7. 小白的Python之路 day2 列表、元组操作

    1. 列表.元组操作 列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储.修改等操作 定义列表 1 names = ['Tom','Jack','Qian'] 通过下标访问列表中 ...

  8. python学习笔记(三)字典操作和元组操作

    字典: 字典也是我们开发过程中最常用的一种数据类型:具有极快的查找速度:字典是一种key-value的数据类型,比如说要存每个人的信息,那么每个人的编号就是key,value就是每个人的信息,这样的话 ...

  9. Python 文件常见操作

    # -*-coding:utf8 -*- ''''' Python常见文件操作示例 os.path 模块中的路径名访问函数 分隔 basename() 去掉目录路径, 返回文件名 dirname()  ...

随机推荐

  1. 手把手教你Chrome扩展开发:本地存储篇

    手把手教你开发chrome扩展一:开发Chrome Extenstion其实很简单 手把手教你开发Chrome扩展二:为html添加行为 手把手教你开发Chrome扩展三:关于本地存储数据 HTML5 ...

  2. node.js和前端js有什么区别

    进行前端开发工作需要掌握技能有html. css.js以及各种前端框架,把这些技术玩6就可以成为一名合格的前端开发工作者 而进行nodejs开发,需要掌握js.web服务器原理.关系数据使用, 如果玩 ...

  3. javaweb乱码(tomcat服务器)

    et提交  :<Connector protocol="HTTP/1.1" port="80" redirectPort="8443" ...

  4. asp.net发送邮件带格式(本demo发送验证码)

    public ActionResult Mail(string email, string userName) { try { MailSender mail = new MailSender(); ...

  5. Java逍遥游记读书笔记<一>

    前言 必须先来一句,这是入门级别,高手勿喷~ 写Android的时候总有一些语句不是很理解,其实大部分是Java的内容,所以想系统的学下Java. 这本书——<Java逍遥游记>是在图书馆 ...

  6. Java定时任务:利用java Timer类实现定时执行任务的功能

    一.概述 在java中实现定时执行任务的功能,主要用到两个类,Timer和TimerTask类.其中Timer是用来在一个后台线程按指定的计划来执行指定的任务. TimerTask一个抽象类,它的子类 ...

  7. 数据结构 + 算法 -> 收集

    董的博客:数据机构与算法合集 背包问题应用(2011-08-26) 数据结构之红黑树(2011-08-20) 素数判定算法(2011-06-26) 算法之图搜索算法(一)(2011-06-22) 算法 ...

  8. Linux下的Make与Makefile

    原文转载自:http://www.cpplive.com/html/1776.html 另外一个不错的博客http://bbs.chinaunix.net/thread-1950588-1-1.htm ...

  9. Openstack深入了解虚拟机

    续Openstack虚拟机创建流程 在控制节点也安装一个计算服务也变成一个计算节点 yum -y install openstack-nova-compute 启动并且设置开机启动 systemctl ...

  10. c# Log4net的结构

    log4net 有四种主要的组件,分别是Logger(记录器), Repository(库), Appender(附着器)以及 Layout(布局).