元组 Tuple

+元组即不可变(immutable)列表

除了可改变列表内容的方法外,其他方法均适用于元组

因此,索引、切片、len()、print等均可用

但是,appeng、extend、del等不可用

+使用,(可以加())创建元组

my_tuple = 1,'a',3.14,True

my_tuple = (1,'a',3.14,True)

+为什么需要元组?

保证列表内容不被修改

元组赋值

交换两个值

temp = a
a = b
b = temp

或者

a,b = b,a

b赋值给a,a赋值给b,这个过程同时进行

切分一个邮件地址

name,domain = 'car@xx.com'.split('@')

分两部分,@之前的用户名,@之后的域名

函数和元组

+函数只能有一个返回值

但是该值可以是一组值,如返回一个元组

+如同时返回列表中的最大和最小值

DSU模式

+Decorate,Sort and Undecorate(DSU)模式

+装饰、排序和反装饰

如根据单词的长度对一个单词列表进行排序

words = ['abc','defgh','df','lsefgd']
#decorate
lst = [] for word in words:
lst.append((len(word),word))
#sort
lst.sort(reverse = True)
#undecorate
res = [] for length,word in lst:
res.append(word) print res

用匿名函数 lambda

words = ['abc','defgh','df','lsefgd']

words.sort(key = lambda lst: len(lst),reverse = True)

print words

note10 元组的更多相关文章

  1. python 数据类型 -- 元组

    元组其实是一种只读列表, 不能增,改, 只可以查询 对于不可变的信息将使用元组:例如数据连接配置 元组的两个方法: index, count >>> r = (1,1,2,3) &g ...

  2. 【.NET深呼吸】元组数据(Tuple)

    各位观众,大家好,欢迎收看由火星电视台直播的<老周吹牛>节目,注意:本节目没有任何技术含量,如果您没有兴趣,请砸掉电视机. 今天说一下System命名空间下的一个数据类型——Tuple,翻 ...

  3. python学习笔记(列表、元组、购物车实例)

    一.列表 列表和字典是最常用的两种数据类型 1. 需求:怎么存放班级80多人的姓名,如何实现? names = ["Zhangyang","Guyun",&qu ...

  4. python之最强王者(7)——元组(tuple)

    1.序列(sequence): 说明:在前面的字符串列表中其实我们已经用到了序列,之所以放到这篇来讲主要是为了承上启下,方便理解和记忆. python的数据访问模型:直接存取 ,序列 ,映射 对非容器 ...

  5. Python元组

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

  6. Scala元组

    object TupleTest { def basic(firstName: String, lastName: String, age: Int): (String, String, Int) = ...

  7. python 的 集合,字典,元组,列表

    元组 tuple  a = (1,2,3) 元组不能修改 可权嵌套列表  如 (1,2,3,[1,2,3]) 里面的列表可修改  一般不这样用 列表list  a = [1,2,3] 集合set  a ...

  8. Python列表和元组

    Python是没有数组的概念,但是和数组比较相近的概念是列表和元素. 下面两个例子展示列表和元组. # coding=utf-8 # 元组 students = ('小明', '小黄', '小李', ...

  9. c# 元组Tuple

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

随机推荐

  1. C++编程入门

    学习一门新的程序设计语言的最好方法就是练习编写程序. 每个C++程序都包含一个或多个函数,其中一个必须命名为main.操作系统通过调用main来运行C++程序. 一个函数定义包含四个部分:返回类型:函 ...

  2. MAC IDEA mybatis 逆向工程 无结果文件

    mac下路径是./src windows 路径是.\src 解决方法,将\纠正过来即可

  3. CodeBlocks无法调试的解决方法

    闲话: 万万没想到我也会写这个东西.一开始软件工程课的时候老师要求我们写博客园,一直都是被动地在写博客.刚刚在重温C语言的时候发现的各种各样问题觉得还是写下来比较好,一旦以后自己又忘了呢……(摊手 顺 ...

  4. maven 包下载地址

    <groupId>cn.com.bmsoft.smartcity</groupId><artifactId>base</artifactId><p ...

  5. 将lvm逻辑卷分出一部分

    今天公司磁盘报警,查看磁盘发现挂载的/aa空间还很多,而/ee 空间不足,现将/aa上的lvm分出一部分空间.加到/ee上 注:首先要 df  -T  -h 开一下磁盘格式如果是xfs格式的lvm  ...

  6. linux开机默认启动命令行模式

    进入vi /etc/inittab 修改id:5:initdefault: 为id:3:initdefault:

  7. Windows下部署Apache RocketMQ

    一:环境准备: Windows.JDK1.8+.Maven.Git 二:RocketMQ准备:  1.http://rocketmq.apache.org/release_notes/release- ...

  8. vs2015打开Dialog出现HRESULT:0x8CE0000B

    关闭项目  在工程目录找到.vc.db文件删除

  9. centos7常用命令

    系统命令 shutdown -h now # 关机 shutdown -r now # 重启 reboot # 重启 systemctl status firewalld # 查看防火墙状态 syst ...

  10. 在ubuntu服务器上安装tomcat 9

    前提条件: 确保ubuntu服务器上 已经安装 java 8 或更高版本,安装java8可以参考我的另一篇博文 通过 ppa 在ubuntu server 上安装java 8 java -versio ...