一.概念

元组属于不可变序列,元组是包含多个元素的类型,元素之间用逗号分割。
例如:t1=123,456,“hello”
元组可以是空的,t2=()
元组包含一个元素时:t3=123,
元组外侧可以使用括号,也可以不使用
可以使用tuple函数将其他序列转换为元组
使用del删除元组对象,不能删除元组元素

二.特点

1.元组中元素可以是不同类型;
一个元组也可以作为另一个元组的元素,此时,作为元素的元组需要增加括号,从而避免歧义。
例如:

2.元组中各元素存在先后关系,可以通过索引访问元组中元素。
例如:t[0]
3.元组定义后其中元素不能更改,也不能删除。
例如:t[0]=3

4.与字符串类型类似,可以通过索引区间来访问元组中部分元素
例如:t[1:]
与字符串一样,元组之间可以使用+号和*号进行运算。

5.列表和元组都属于有序序列,都支持使用双向索引访问其中的元素,以及使用count()方法统计指定元素的出现次数和index()方法获取指定元素的索引,len()、map()、filter()等大量内置函数和+、+=、in等运算符也都5.可以作用于列表和元组。

元组属于不可变(immutable)序列,不可以直接修改元组中元素的值,也无法为元组增加或删除元素。

元组没有提供append()、extend()和insert()等方法,无法向元组中添加元素;

元组也没有remove()和pop()方法,也不支持对元组元素进行del操作,不能从元组中删除元素,而只能使用del命令删除整个元组。

三.小结

Python语言中的元组类型定义后不能修改
不可变的tuple有什么意义呢?
因为tuple不可变,所以代码更安全。(安全保护数据)
如果仅考虑代码的灵活性,也可以用列表类型代替元组类型。

四.元组与列表

元组中的数据一旦定义就不允许更改,列表可以;
内建的tuple( )函数接受一个列表参数,并返回一个包含同样元素的元组,而list( )函数接受一个元组参数并返回一个列表。从效果上看,tuple( )冻结列表,而list( )融化元组
元组的速度比列表更快;
元组对不需要改变的数据进行“写保护”将使得代码更加安全;
列表是动态长度,可根据需求增减,列表的方法或操作符,为统计应用提供了简单的运算手段,元素可简单访问及遍历。
当列表元素增加或删除时,列表对象自动进行扩展或收缩内存,保证元素之间没有缝隙;

Python—元组(戴上了枷锁的列表)的更多相关文章

  1. 元组:戴上了枷锁的列表 - 零基础入门学习Python013

    元组:戴上了枷锁的列表 让编程改变世界 Change the world by program 元组:戴上了枷锁的列表 由于和列表是近亲关系,所以元组和列表在实际使用上是非常相似的. 我们这节课主要通 ...

  2. 零基础入门学习Python(13)--元组:戴上了枷锁的列表

    前言 这节课我们讨论主题是元祖:我们有个小标题戴上了枷锁的列表 我们都知道早在300多年前,孟德斯鸠在变法的时候说过,一切拥有权力的人都容易被滥用权力,这是万古不变的一条经验.但是呢,凡是拥有大权利的 ...

  3. 【零基础入门学习Python笔记013】元祖:戴上了枷锁的列表

    元组:戴上了枷锁的列表 因为和列表是近亲关系.所以元祖和列表在实际使用上是很相似的. 本节主要通过讨论元素和列表究竟有什么不同学习元祖. 元组是不可改变元素的.插入.删除或者排序都不能够.列表能够随意 ...

  4. 小甲鱼-013元组tuple:上了枷锁的列表

    1.创建和访问一个元组 1.1创建元组 元组的标志性符号是 , tuple1 = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10) #定义单个元素的元组,要加 , tuple2 = (1 ...

  5. python 元组 序列上使用enumerate()函数

    不能直接for n,x,y in enumerate(data)

  6. Python之路【第二篇】: 列表、元组、字符串、字典、集合

    本文内容: -------------------------------------- 列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 1. 列表(list) 序列是Pyt ...

  7. 巨蟒python全栈开发-第4天 列表&元组&range

    今日内容大纲 1. 什么是列表 定义: 能装对象的对象 在python中使用[]来描述列表, 内部元素用逗号隔开. 对数据类型没有要求 列表存在索引和切片. 和字符串是一样的. 2. 相关的增删改查操 ...

  8. Python元组与列表的区别

    列表类似于我们用铅笔在纸上写字,写错了还可以擦掉:而元组则类似于用钢笔写字,写错了就擦不掉了,除非换张纸重写. 列表和元组的区别主要体现在一下几个方面: 列表属于可变序列,他的元素可以随时修改或删除: ...

  9. python学习笔记:第4天 列表和元组

    目录 基本数据类型:列表 基本数据类型:元组 补充知识 基本数据类型:列表 1. 列表的介绍 列表也是python的基础的数据类型之一,类似于Java中的数组一样,可以存放很多元素.列表是用括号括起来 ...

随机推荐

  1. mysql_config_editor的使用

    从Mysql5.6.6 开始mysql_config_editor允许存储加密的身份验证文件.mylogin.cnf 如果不想每次登录服务器都输入数据库的密码可以使用该功能 mysql_config_ ...

  2. 关于gitbash一直报:sh: __git_ps1: command not found的解决办法

    curl -o ~/.git-prompt.sh https://raw.githubusercontent.com/git/git/master/contrib/completion/git-pro ...

  3. CentOS7安装.Net Core2.2

    一.安装.Dotnet Core 2.2 Runtime Linux上运行Dotnet  Core程序的前提是安装Dotnet Core Runtime .Net Core对不同的Linux版本提示了 ...

  4. Java中Date类型如何向前向后滚动时间,( 附工具类)

    Java中的Date类型向前向后滚动时间(附工具类) 废话不多说,先看工具类: import java.text.SimpleDateFormat; import java.util.Calendar ...

  5. obfuscator-llvm Xcode集成配置

    一.简介 obfuscator-llvm 是一个开源的代码混淆编译器,能够使编译出来的文件添加垃圾代码和各种跳转流程,给逆向分析者增加难度. 二.编译 (1) 下载 目前最新版的是4.0的,下载地址是 ...

  6. 在IOS端点击数字后会调起系统拨号界面

    在IOS端点击数字后会调起系统拨号界面,解决方案: <meta name="format-detection" content="telephone=no" ...

  7. 大数据学习--day05(嵌套循环、方法、递归)

    嵌套循环.方法.递归 图形打印 public static void main(String[]arg) { /** * * * * * * */ // 3 2 1 0 // 1 3 5 for(in ...

  8. hive新手学习随笔

    一.回顾    1.hive基于Hadoop的(存储HDFS,计算MR)    2.sql on hadoop概念            ->简化开发的操作            ->提升 ...

  9. MySql慢查询日志——开启/查看/删除

    1,开启慢查询日志 修改mysql.ini文件,加入如下配置: [mysqld] log-slow-queries=H:\mysql_log\slow_query.log long-query-tim ...

  10. mysql主从集群搭建;(集群复制数据)

    1.搭建mysql 5.7环境chown mysql:mysql -R /data/groupadd mysqluseradd -g mysql mysql yum install numactlrp ...