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. 基于quick-cocos2d-x的LuaSocket范例

    这是一个 luasocket 范例. 为了便于使用,我封装了 luasocket 到 cc.net.SocketTCP 类中.这个范例展示如何使用 cc.net.SocketTCP . 同时,在本范例 ...

  2. 用阿里云搭建Http代理服务器

    先说下我的运行环境: Ubuntu16.04+python3.5,用的是阿里云ECS乞丐版. 搭建步骤: [python] view plain copy 0. 直接用xshell或putty远程到云 ...

  3. 下列哪一个接口定义了用于查找、创建和删除EJB实例

    下列哪一个接口定义了用于查找.创建和删除EJB实例 A.Home B.Remote C.Local D.Message 解答:A remote接口定义了业务方法,用于EJB客户端调用业务方法. hom ...

  4. 金典 SQL笔记(9)

    page301-354其它解决方式 ---开窗函数 --測试数据及表 USE [NB] GO /****** 对象: Table [dbo].[T_Person2] 脚本日期: 08/14/2015 ...

  5. windows下用Eclipse连接大数据环境得hbase

    1.解压hbase安装包 2.将大数据环境得hadoop安装包拷贝到windows(这里以d:/hadoop为例) 3.打开C:\Windows\System32\drivers\etc目录下的hos ...

  6. BZOJ 3261 最大异或和 可持久化Trie树

    题目大意:给定一个序列,提供下列操作: 1.在数组结尾插入一个数 2.给定l,r,x,求一个l<=p<=r,使x^a[p]^a[p+1]^...^a[n]最大 首先我们能够维护前缀和 然后 ...

  7. LNK2005 _DllMain@12 mfcs100d.lib

    起因是将之前使用 MFC 规则 DLL 的动态库都改为了 MFC 扩展 DLL,在将动态库中从 CWinApp 继承的类替换为 DllMain 函数后,就出现 LNK2005 错误,说 DllMain ...

  8. Python调用外部程序

    通过os.system和subprocess.call()函数调用其他程序 预备知识:cmd中打开和关闭程序 cmd中打开程序 a.打开系统自带程序 系统自带的程序的路径一般都已加入环境变量之中,只需 ...

  9. 认识tornado(一)

    tornado 源码包中 demos 目录下包含一些示例程序,就从最简单的 helloworld.py 来看一个 tornado 应用程序的代码结构. 完整的实例程序如下: 01 #!/usr/bin ...

  10. PAT 1013 Battle Over Cities(并查集)

    1013. Battle Over Cities (25) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue It ...