在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. [Git] 019 merge 命令的补充

    回顾:[Git] 017 加一条分支,享双倍快乐 的 "2.3" 1. "Fast-forward" "Git" 在合并分支时会尽可能地使用 ...

  2. 使用eclipse创建mavenWeb项目,中途遇到的问题及解决方案!

    创建MavenWeb项目的步骤,如下: 1).new--->Maven --->maven project,如图: 之后, next,最后finish,项目创建完成,项目的目录如下: 将w ...

  3. 2016青岛区域赛.Coding Contest(费用流 + 概率计算转换为加法计算)

    Coding Contest Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)To ...

  4. Yii2.0 limit(1)与one()

    ActiveRecord中的limit(1)与one()的区别 (new \yii\db\Query())->from('user')->limit(1)->one() public ...

  5. Python 入门之流程控制语句

    Python 入门之流程控制语句 1.if判断 (1) 单 if if –-如果 if 条件: 缩进 结果 (官方推荐4个空格,或者一个tab 不能空格和tab混合使用) money = 10 pri ...

  6. 三、JVM — 类加载过程

    类加载过程 加载 验证 准备 解析 初始化 类加载过程 Class 文件需要加载到虚拟机中之后才能运行和使用,那么虚拟机是如何加载这些 Class 文件呢? 系统加载 Class 类型的文件主要三步: ...

  7. electron实现qq快捷登录!

    之前本来想不写这个功能的,结果客户死活要qq登录! 实在没办法就写了,顺便写个文章!在写之前有两个问题:1: 打开qq授权页面点击页面中的链接会又打开一个页面! .....2: 授权之后是否成功很难去 ...

  8. j网络爬虫之WebMagic

    WebMagic官网:http://webmagic.io/ 注意: 1.在自定义PageProcessor中使用System.out.println(“str”),Spider.create(new ...

  9. Java程序员集合框架面试题

    Java集合框架是最常被问到的Java面试问题,要理解Java技术强大特性,就有必要掌握集合框架.这里有一些实用问题,常在Java面试中问到. 1. 什么是Java集合API Java集合框架API是 ...

  10. mailstats - 显示邮件状态信息

    总览 mailstats [-o] [-C cffile] [-f stfile] 描述 mailstats工具显示当前的邮件状态信息. 首先,先显示统计启动时所记录的时间,当然是以ctime(3)所 ...