tuple和list的主要区别就是tuple里的元素的是不能改变的,即tuple时immutable的

#创建tuple
>>> tupa = (12 , 'ed' , 34)
>>> tupb = 134 , 'hf', 43
>>> tupc = (12 ,)   #一个元素的时候不能不写","
>>> print tupa,tupb, tupc
(12, 'ed', 34) (134, 'hf', 43) (12,)

#访问tuple
#tupb[1:2]包括第1个但不包括第2个,Python很多地方都是这样的
>>> print tupa[0],tupb[1:2], tupc[-1] , tupb[-2]
12 ('hf',) 12 hf

#更新tuple
#tuple是immutable的,里面的值不能更改
>>> tupa[0] = 10
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment

#合并tuple
>>> tupd = tupa + tupb
>>> print tupa, tupb, tupd
(12, 'ed', 34) (134, 'hf', 43) (12, 'ed', 34, 134, 'hf', 43)

#删除tuple
#tuple是immutable的,里面的值不能删除,只能使用del删除整个tuple
>>> del tupd[0]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'tuple' object doesn't support item deletion
>>> del tupd
>>> print tupd
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'tupd' is not defined

基本操作

#测试tuple里元素的数目
>>> len(tupa)
3

#合并tuple
>>> print tupa+tupb
(12, 'ed', 34, 134, 'hf', 43)

#重复tuple
>>> print tupa*2, tupa[0]*3, tupa[1]*4
(12, 'ed', 34, 12, 'ed', 34) 36 edededed

#元素所属
>>> 12 in tupa
True
>>> 12 in tupa, 14 in tupa
(True, False)
>>> test = 12 in tupa
>>> print test
True
>>> test = 12 in tupa, 15 in tupa
>>> print test
(True, False)

#遍历元素
>>> for x in tupa:
...     print x
...
12
ed
34

Built-in Tuple Functions

cmp()

Compares elements of both tuples.If elements are of the same type, perform the compare and return the result. If elements are different types, check to see if they are numbers.

  • If numbers, perform numeric coercion if necessary and compare.
  • If either element is a number, then the other element is "larger" (numbers are "smallest").
  • Otherwise, types are sorted alphabetically by name.

If we reached the end of one of the tuples, the longer tuple is "larger." If we exhaust both tuples and share the same data, the result is a tie, meaning that 0 is returned

Syntax&P

cmp(tuple1, tuple2)

eg

>>> cmp (tupa,tupb)
-1

len()

Returns the total length of the tuple.

Syntax&P

len(tuple)

eg

>>> len(tupa)
3

max()

Returns item from the tuple with max value.

Syntax&P

max(tuple)

eg

>>> max(tupa)
'ed'

min()

Returns item from the tuple with min value.

Syntax&P

min(tuple)

eg

>>> min(tupa)
12

tuple()

Converts a list into tuple

Syntax&P

tuple(seq)

eg

>>> lia=[12,14,'12']
>>> print tuple(lia)
(12, 14, '12')

元组tuple的更多相关文章

  1. c# 元组Tuple

    Tuple类型像一个口袋,在出门前可以把所需的任何东西一股脑地放在里面.您可以将钥匙.驾驶证.便笺簿和钢笔放在口袋里,您的口袋是存放各种东西的收集箱.C# 4.0引入的一个新特性 Tuple类型与口袋 ...

  2. Python—元组tuple

    列表的知识其实就类似于c语言中的数组,可插入.修改.list=[a,b,c,d] 而元组tuple,一旦初始化即不可修改.好处与绝对安全. 定义一个空的元组:t=() 定义只有一个元素的元组:t=(1 ...

  3. Python中的元组(tuple)、列表(list)、字典(dict)

    -------------------------------更新中-------------------------------------- 元组(tuple): 元组常用小括号表示,即:(),元 ...

  4. Java元组Tuple使用实例--转载

    原文地址:http://50vip.com/35.html 一.为什么使用元组tuple? 元组和列表list一样,都可能用于数据存储,包含多个数据:但是和列表不同的是:列表只能存储相同的数据类型,而 ...

  5. Python - 元组(tuple) 详解 及 代码

    元组(tuple) 详解 及 代码 本文地址: http://blog.csdn.net/caroline_wendy/article/details/17290967 元组是存放任意元素集合,不能修 ...

  6. 使用元组Tuple,返回多个不同类型的值

    记得我在不知道Tuple时,如果想实现调用某个函数时,返回多个值,则需要使用ref或者out了. string name = ""; int result= GetInfo(ref ...

  7. Python TypeError: not all arguments converted during string formatting ——元组tuple(a)和(a,)的区别

    今天写程序,想输出一个array的shape,原程序为: print('shape of testUImatrix:%s\nStart to make testUImatrix...'%(testui ...

  8. Python元组(tuple)

    元组(tuple)是Python中另一个重要的序列结构,与列表类型,也是由一系列按特定顺序排列的元素组成,但是他是不可变序列.在形式上元组的所有元素都放在"()"中,两个元素使用& ...

  9. Java元组Tuple介绍与使用

    一.元组介绍 仅仅一次方法调用就可以返回多个对象,你应该经常需要这样的功能吧.可以return语句只允许返回单个对(可能有人说返回一个集合就可以了,请记住,一个集合也只是一个对象而已)因此,解决办法就 ...

  10. python基础之列表list元组tuple

    作者:tongqingliu 转载请注明出处:http://www.cnblogs.com/liutongqing/p/7041763.html python基础之列表list元组tuple 列表li ...

随机推荐

  1. Word, PPT和Excel的常用技巧(持续更新)

    本文的目的是记录平时使用Word, PowerPoint和Excel的过程中的一些小技巧,用于提升工作效率. 此文会不定期的更新,更新频率完全取决于实际使用遇到的问题的次数. 目录 Word Powe ...

  2. 点我吧工作总结(技术篇) Velocity

    1. 什么是velocity Velocity[vəˈlɑ:səti],名称字面翻译为:速度.速率.迅速.该项目的开源地址:http://velocity.apache.org/,它是一个基于Java ...

  3. Linux下如何查看哪个进程占用内存多?

    1.top top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器 可以直接使用top命令后,查看%MEM的内容.可以选择按进程查看或者 ...

  4. 高性能 Windows Socket 组件 HP-Socket v2.3.1-beta-1 发布

    HP-Socket 是一套通用的高性能 Windows Socket 组件包,包含服务端组件(IOCP 模型)和客户端组件(Event Select 模型),广泛适用于 Windows 平台的 TCP ...

  5. excel查看VBA代码快捷键

    公司现在的很多自动化代码生成使用excel VBA,本来这事跟自己一点关系打不着,不过计划年底切换中间件,这得导致部分代码结构调整,自己还得去调整测试,老忘掉这快捷键,特记录下,Alt + F11

  6. pymysql 操作数据库

    一.简介 pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎相同,但目前pymysql支持python3.x而后者不支持3.x版本 其执行语句与sql源码相似 二.使用 ...

  7. 用事实说话,成熟的ORM性能不是瓶颈,灵活性不是问题:EF5.0、PDF.NET5.0、Dapper原理分析与测试手记

    [本文篇幅较长,可以通过目录查看您感兴趣的内容,或者下载格式良好的PDF版本文件查看] 目录 一.ORM的"三国志"    2 1,PDF.NET诞生历程    2 2,Linq2 ...

  8. Face++ – 提供给你实时的脸部识别 API

    Face++ 是一个小巧,功能强大,跨平台的服务,由Megvii公司建立,致力于建立一个新的视觉平台.它使用计算机视觉尖端科技和数据挖掘,提供3个核心视觉服务(探测,识别和分析).基于 Face++ ...

  9. Swiper – 经典的移动触摸滑块插件【免费】

    Swiper 是移动 Web 开发中最常用的滑块插件,是一款免费的,最现代化的移动触摸滑块,支持硬件加速的转换和惊人的原生表现.它的目的是在移动网站,移动 Web 应用程序和 Hygrid 混合应用程 ...

  10. css命名书写规范小结。

    单行形式书写风格的排版约束 1.   每一条规则的大括号 { 前后加空格 2.   多个selector共用一个样式集,则多个selector必须写成多行形式 3.   每一条规则结束的大括号 } 前 ...