在Python不可变数据类型中,有一个比较重要的角色那就是元组( tuple )。如果某个对像被定义为元组类型,那么就意味着它的值不能被修改,除非重新定义一个新的对像。元组和List列表常被放在一起进行比较,它们都是序列,所以有许多相同的操作方法,但前者是不可变数据类型,后者是可变数据类型,从本质上又并不相同.

内存结构

如何创建元组tuple

1、创建元组方法很简单,元组是用小括号( )包括起来的,( )括号中的元素用逗号分割,这样就完成元组的创建了。
>>>(1,2,3)
(1,2,3)
如果新建时没有用( )括号包括,只用逗号进行分隔python也会把它认做为元组
>>>1,2,3
(1,2,3)
如果你新建的元组中只有一个值,那么请记得在这个值后边加上逗号
>>>1,
(1,)    
如果没有逗号,python只当把它当做整型来处理。
>>>1
1

2、还有一种有趣的元组创建方法,需要用到tuple函数的功能:它可以一个列表为参数,把它转换为元组。

tuple([1,2,3,4])

>>>(1,2,3,4)

tuple('hello')

>>>('h','e','l','l','o')

用了字符串为参数,结果是把字符串'hello'中的每一个字母,都做为一个新的元素添加到新元组中。

如何读取元组中的数据、值

元组是一个有序的集合,和列表一样可以通过偏移来数据。简单的说,元组支持索引和切片操作。
索引(下标)和切片取值:

x = (0,1,2,3)

x[1]  索引下标

x[2:4]  切片取值   不包含四

如何修改元组的操作方法

元组a = (2,3,3) 要把它变成(3,3,3)

list(a)   把元组转换成列表a =[2,3,3]

a[0]=3  更改元组转变成列表的第一个值

tuple(a)

1、首先引用list( )方法中传入变量a的值,并赋值给变量b,得到列表b = [2,3,3]
2、取列表变量b的第0位的值,并修改为3,此时变量b = [3,3,3]
3、最后用tupel( )方法中传入变量b的值,重新赋值给变量a,此时a = (3,3,3)

如果元组内包含的元素中,有可变数据类型,修改起来就十分方便

变量名为X的元组,第0位下标对应的是一个列表,因为列表是可变数据类型,所以可以直接进行修改

1、元组是一个有序的集合,
2、元组和列表一样可以使用索引、切片来取值。
3、创建元组后不能在原地进行修改替换等操作。
4、元组支持嵌套,可以包含列表、字典和不同元组。
5、元组支持一般序列的操作,例如:+、*
     >>>(1,2)+(3,4)
     (1,2,3,4)
     >>>(7,8)*4
     (7,8,7,8,7,8,7,8)
    注意+、*操作时,返回的是一个新元组

Python 元组遍历排序操作方法的更多相关文章

  1. Python实现各种排序算法的代码示例总结

    Python实现各种排序算法的代码示例总结 作者:Donald Knuth 字体:[增加 减小] 类型:转载 时间:2015-12-11我要评论 这篇文章主要介绍了Python实现各种排序算法的代码示 ...

  2. Python元组、列表、字典、集合

    1. 元组 元组由不同元素组成,每个元素可以存储不同类型的数据,元组是有序的,元组创建后不能再做任何修改. 元组的创建: tuple = ('a','b','c','d') 如果创建的元组只有1个元素 ...

  3. 飘逸的python - 多条件排序及itemgetter的应用

    曾经客户端的同事用as写一大堆代码来排序,在得知python排序往往只需要一行,惊讶无比,遂对python产生浓厚的兴趣. 之前在做足球的积分榜的时候需要用到多条件排序,如果积分相同,则按净胜球,再相 ...

  4. python中字符串的操作方法

    python中字符串的操作方法大全 更新时间:2018年06月03日 10:08:51 作者:骏马金龙 我要评论这篇文章主要给大家介绍了关于python中字符串操作方法的相关资料,文中通过示例代码详细 ...

  5. 【转】python文件和目录操作方法大全(含实例)

    python文件和目录操作方法大全(含实例) 这篇文章主要介绍了python文件和目录的操作方法,简明总结了文件和目录操作中常用的模块.方法,并列举了一个综合实例,需要的朋友可以参考下一.python ...

  6. Python元组与字典详解

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

  7. 【Python】常用排序算法的python实现和性能分析

    作者:waterxi 原文链接 背景 一年一度的换工作高峰又到了,HR大概每天都塞几份简历过来,基本上一天安排两个面试的话,当天就只能加班干活了.趁着面试别人的机会,自己也把一些基础算法和一些面试题整 ...

  8. python的常见排序

    在python程序中,我们往往自始至终都在与序列(列表.字典.元组)打交道,而最常用的操作就是对序列排序了.在此简单总结一下python中的排序. 基本排序方法 在python中,list对象具有 s ...

  9. Python 元组和列表

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

随机推荐

  1. 从企业版BOSS直聘,看求职简历技巧

    有时候,不是我们不可以,而是我们连面试的机会都没有.希望这篇文章能帮助大家找工作,有一个展示自己的机会. [ ] 最近负责测试的面试工作,在等HR推简历的时候害怕错过优秀的伙伴,找HR拿到了公司在BO ...

  2. [转帖]TLS握手:回顾1.2、迎接1.3

    TLS握手:回顾1.2.迎接1.3 novsec2019-05-10共26541人围观 ,发现 2 个不明物体网络安全 *本文原创作者:novsec,本文属于FreeBuf原创奖励计划,未经许可禁止转 ...

  3. CSS中BFC规则

    何为BFC BFC(Block formatting context)直译为"块级格式化上下文".它是一个独立的渲染区域,只有Block-level box参与, 它规定了内部的B ...

  4. 最长上升子序列(LIS) Medium2

    JGShining's kingdom consists of 2n(n is no more than 500,000) small cities which are located in two ...

  5. POJ 3414 Pots (BFS/DFS)

    Pots Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 7783   Accepted: 3261   Special Ju ...

  6. Redis---Redis与Memcached

    4.Redis与Memcached   两者都是非关系型内存键值,主要有以下不同: 数据类型   Memcached仅支持字符串类型,而Redis支持五种不同的数据类型,可以更灵活地解决问题. 数据持 ...

  7. Agreeing to the Xcode/iOS license requires admin privileges, please run “sudo xcodebuild -license” a...

    报错: 从错误信息来看,似乎需要通过管理员身份来接受许可协议,于是试着从这个角度google,终于在这里找到了解决方法: 1.打开终端,输入  sudo xcodebuild -license 2.终 ...

  8. 说说 HeapSort 堆排序思想,以及个人优化方案。(老物)

    听说你要排上亿个数据之 HeapSort ? 前言 : 来来来,今天我们来说说一个用来排大量数据所用的基础比较排序吧~ 注:阅读本文学习新技能的前置要求为:了解什么是二叉树及其数组性质,如果未达到要求 ...

  9. js实现完整轮播

    1.封装一个简单的动画函数 function animate(obj,target,callback){ clearInterval(obj.timer);//清除定时器防止定时器重复添加 obj.t ...

  10. Hive内部表,外部表和分区表

    外部表和内部表的区别 内部表也称之为managed_table: 默认存储在/user/hive/warehouse下,也可以通过location指定: 删除表事,会删除表数据以及元数据: 外部表称之 ...