作者博文地址:https://www.cnblogs.com/liu-shuai/

Python的元组与列表类似,同样可通过索引访问,支持异构,任意嵌套。不同之处在于元组的元素不能修改。元组使用小括号,列表使用方括号。

创建元组

  元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可

  tup1 = ()          #空元组

  tup2 = ('a','b','c','d')

  tup3 = (1,2,3,'a','b','c')

元组操作方法及实例展示

  可以使用dir(tuple)查看元组支持的操作

count

  1. 1 功能:统计元组中某元素的个数
  2. 2 语法:T.count(value) -> integer -- return number of occurrences of value
  3. 3 T = ('a','b','c','d',1,2,2,3,4)
  4. 4 T.count(2)
  5. 5 结果:2

index

  1. 1 功能:获取元素在元组中的索引值,对于重复的元素,默认获取从左起第一个元素的索引值
  2. 2 语法:T.index(value, [start, [stop]]) -> integer -- return first index of value.Raises ValueError if the value is not present.
  3. 3 T = ('a','b',2,'c','d',1,2,3,4)
  4. 4 T.index(2)
  5. 5 结果:2 #元素2第一次出现在索引为2的位置
  6. 6 T.index(2,3,7)
  7. 7 结果:6

T1 + T2

  1. 1 功能:合并两个元组,返回一个新的元组,原元组不变
  2. 2 语法:T = T1 + T2
  3. 3 T1 = ('a','b','c')
  4. 4 T2 = (1,2,3,4)
  5. 5 T = T1 + T 2
  6. 6 结果:
    7 print T
  7. 8 ('a','b','c',1,2,3,4)
  8. 9 print T1
  9. 10 ('a','b','c')
  10. 11 print T2
  11. 12 (1,2,3,4)

T1 * N

  1. 1 功能:重复输出元组N次,返回一个新元组,原元组不变
  2. 2 语法:T = T1 * N
  3. 3 T1 = ('a','b',1,2,3)
  4. 4 T = T1 * 3
  5. 5 结果:
  6. 6 print T
  7. 7 ('a','b',1,2,3,'a','b',1,2,3,'a','b',1,2,3)
  8. 8 print T1
  9. 9 ('a','b',1,2,3)

元组虽然不可变,但是当元组中嵌套可变元素时,该可变元素是可以修改的,元组本身不变,使用id(tuple)查看。

  1. 1 T = ('a','b','c',[1,2,3,4],1,2,3)
    2 id(T)
    3 140073510482784
  2. 4 print T[3]
  3. 5 [1,2,3,4]
  4. 6 T[3].append(5)
  5. 7 print T[3]
  6. 8 [1,2,3,4,5]
  7. 9 print T
  8. 10 ('a','b','c',[1,2,3,4,5],1,2,3)
    11 id(T)
    12 140073510482784

元组支持切片操作

  1. 1 语法:T[start [, stop[, step]]]
  2. 2 实例演示:
  3. 3 T = ('a','b','c','d','e','f','g','h')
  4. 4 print T[:] #取所有元素
  5. 5 ('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h')
  6. 6 print T[2:] #取从索引2开始到末尾的元素
  7. 7 ('c', 'd', 'e', 'f', 'g', 'h')
  8. 8 print T[2:6] #取索引2到6的所有元素,不包含索引6
  9. 9 ('c', 'd', 'e', 'f')
  10. 10 print T[2:6:2] #从索引2到6,每隔一个元素取一个
  11. 11 ('c', 'e')

Python 元组 (tuple)的更多相关文章

  1. Python 元组 tuple() 方法

    描述 Python 元组 tuple() 方法用于将可迭代对象(字符串.列表.元祖.字典)转换为元组. 语法 tuple() 方法语法: tuple(iterable) 参数 iterable -- ...

  2. Python元组tuple(不可变)

    Python元组Tuple(不可变): 元组的特点: 1.元组的初始化: tuple = (1, )  #元组只有一个元素的话,初始化时要加,否则当做元素的普通变量类型处理 tuple = (1, 2 ...

  3. python 元组tuple - python基础入门(14)

    在上一篇文章中我们讲解了关于python列表List的相关内容,今天给大家解释一下列表List的兄弟 – 元组,俗称: tuple. 元组tuple和列表List类似,元组有如下特点: 1.由一个或者 ...

  4. python 元组tuple介绍,使用。

    原文 https://blog.csdn.net/ruanxingzi123/article/details/83184909 一  是什么? # python 元组tuple? ''' 元祖tupl ...

  5. Python—元组tuple

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

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

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

  7. Python元组(tuple)

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

  8. Python 元组(Tuple)操作详解

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

  9. Python 元组Tuple概念和操作

    # 元组概念:有序的不可变的元素集合 # 和列表的区别就是, 元组元素不能修改 # 定义 # 一个元素的写法 # (666,) t = (666,) #正确写法 t = (666) #错误写法,括号当 ...

随机推荐

  1. [C# 线程处理系列]专题四:线程同步

    目录: 一.线程同步概述 二.线程同步的使用 三 .总结 一.线程同步概述 前面的文章都是讲创建多线程来实现让我们能够更好的响应应用程序,然而当我们创建了多个线程时,就存在多个线程同时访问一个共享的资 ...

  2. html复杂url提交

    在使用手机向webapi发送照片请求的时候遇到一个问题,关于base64位字符串码无法识别,提交的表单是这样的: <form id="form1" method=" ...

  3. loj #6077. 「2017 山东一轮集训 Day7」逆序对

    #6077. 「2017 山东一轮集训 Day7」逆序对   题目描述 给定 n,k n, kn,k,请求出长度为 n nn 的逆序对数恰好为 k kk 的排列的个数.答案对 109+7 10 ^ 9 ...

  4. Liunx基础优化配置

    1:  为系统添加操作用户,并授予sudo权限 [root@localhost ~]# groupadd cai [root@localhost ~]# useradd cai -g cai [roo ...

  5. P4332 [SHOI2014]三叉神经树

    \(\color{#0066ff}{ 题目描述 }\) 计算神经学作为新兴的交叉学科近些年来一直是学术界的热点.一种叫做SHOI 的神经组织因为其和近日发现的化合物 SHTSC 的密切联系引起了人们的 ...

  6. Hadoop源码分析之产生InputSplit文件过程

        用户提交 MapReduce 作业后,JobClient 会调用 InputFormat 的 getSplit方法 生成 InputSplit 的信息.     一个 MapReduce 任务 ...

  7. CuteFTP文件列表按名称排序,有中文文件名时,软件死掉的解决办法

    看到很多人的解决办法是切换到一个没有中文的文件夹,点击排序后,再切换回来,这个的确是可以解决问题,但是有些繁琐! 直接一步到位的解决办法是: 依次点击菜单:工具->全局选项->导航-> ...

  8. Spring 配置RMI远程调用

    项目中遇到了跨系统调用,当初想的是用webservice或者是hessian.但是这个接口用到的并不多,而且是一个非常简单的方法.所有便想到了RMI.在spring中 实现RMI非常简单. 暴露服务: ...

  9. Pandas基本功能详解

    Pandas基本功能详解 Pandas  Pandas基本功能详解 |轻松玩转Pandas(2) 参考:Pandas基本功能详解 |轻松玩转Pandas(2)

  10. visual studio检查运算上溢/下溢的开关位置

    [注意] 勾选这个选项会对应用程序的整体性能造成一些影响,但是会更加安全.具体情况根据项目需求来决定.