tuple 元组
    也是有序列表 ,与list非常相似,但是tuple一旦初始化就不能修改。
        name = ('a','b',1,2,3,True)
       
    tuple不支持 append、insert ,因为tuple初始化后不能修改。
由于不可修改,所以代码更安全,如果可能的话,能用tuple代替list ,尽可能使用tuple。
tuple可以定义为空, 使用 a = () 来定义。

tuple的坑
    如果tuple中只有1个元素,那么要使用 a = ('a',)     b=(1,) 的方式来定义。
    如果不加逗号的话, a = (1)  == a = 1 ,被视为数学中的小括号,而不是元组。
   
用tuple包含list
    tuple虽然初始化后不能修改,但是当tuple中的元素为list时, list依然是可以修改的。
        >>> a = ('a','b',True,1,['qq','yy'],'End')
        >>> a
        ('a', 'b', True, 1, ['qq', 'yy'], 'End')
        >>> a[4]
        ['qq', 'yy']
        >>> a[4][1] = 'aa'
        >>> a
        ('a', 'b', True, 1, ['qq', 'aa'], 'End')
    虽然tuple不可变,tuple第四个元素指向的是list,但是list的元素指向变了。
    如果要保证tuple中一个内容都不变,就要保证元组中的任何一个元素本身就不能变。
   
练习:
L = [
    ['Apple', 'Google', 'Microsoft'],
    ['Java', 'Python', 'Ruby', 'PHP'],
    ['Adam', 'Bart', 'Lisa']
]
# 打印Apple:
print(?)
# 打印Python:
print(?)
# 打印Lisa:
print(?)

Day2 之 元组tuple的更多相关文章

  1. c# 元组Tuple

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

  2. Python—元组tuple

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

  3. Python中的元组(tuple)、列表(list)、字典(dict)

    -------------------------------更新中-------------------------------------- 元组(tuple): 元组常用小括号表示,即:(),元 ...

  4. Java元组Tuple使用实例--转载

    原文地址:http://50vip.com/35.html 一.为什么使用元组tuple? 元组和列表list一样,都可能用于数据存储,包含多个数据:但是和列表不同的是:列表只能存储相同的数据类型,而 ...

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

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

  6. 使用元组Tuple,返回多个不同类型的值

    记得我在不知道Tuple时,如果想实现调用某个函数时,返回多个值,则需要使用ref或者out了. string name = ""; int result= GetInfo(ref ...

  7. Python TypeError: not all arguments converted during string formatting ——元组tuple(a)和(a,)的区别

    今天写程序,想输出一个array的shape,原程序为: print('shape of testUImatrix:%s\nStart to make testUImatrix...'%(testui ...

  8. Python元组(tuple)

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

  9. Java元组Tuple介绍与使用

    一.元组介绍 仅仅一次方法调用就可以返回多个对象,你应该经常需要这样的功能吧.可以return语句只允许返回单个对(可能有人说返回一个集合就可以了,请记住,一个集合也只是一个对象而已)因此,解决办法就 ...

随机推荐

  1. 如何使用GitHub创建Maven私有仓库

    [Github上创建仓库] 首先,在GitHub上创建自己的仓库(mvn-repo): [配置本地setting文件] 找到本地的maven settings文件,配置server: 有两种选择,可以 ...

  2. 企业级工作流解决方案(六)--微服务消息处理模型之与Abp集成

    身份认证传递 对于Abp比较熟悉的朋友应该对他里面的用户身份认证比较熟悉,他是通过实现微软提供的权限认证方式实现的,用户登录身份信息存储在System.Security.Claims.ClaimsPr ...

  3. Camtasia中对给录制的视频添加视觉效果

    视频创作和后期剪辑对很多人来说是一件很头痛的事,对着屏幕一段一段.一帧一帧的进行调整会让人十分的心烦,有时花费了大量时间剪出来的视频质量却不高,让人有一种想砸键盘的冲动. 这种问题,除非是原视频素材质 ...

  4. nginx proxy_pass参数配置带不带‘/’

    1. proxy_pass 配置的url后面,不加'/',那么重定向后,追加location后的路径.比如server_name: 10.9.11.225location /proxy1/{proxy ...

  5. NameServer 与zk

    1.nameServer 之间互不通信,故不存在强一致性,即不同的producer看到的视图可能时不一样的,(如何保证最终一致的?) 2.nameServer维护的boker信息 发生变化时,不会像z ...

  6. 【mq读书笔记】消息消费过程(钩子 失败重试 消费偏移记录)

    在https://www.cnblogs.com/lccsblog/p/12249265.html中,PullMessageService负责对消息队列进行消息拉取,从远端服务器拉取消息后将消息存入P ...

  7. nacos单机,集群安装部署

    nacos单机启动 准备 下载nacos安装包 下载地址 准备centos环境 (本次测试使用docker) PS C:\Users\Administrator> docker run -tid ...

  8. PADS生成贴片文件

    PADS生成贴片文件 VIEW-BOTTOM VIEW能够使Bottom层正常显示. 1. pastmask_top->Output Devices->Device Setup- 2. 进 ...

  9. js如何动态创建一个新的标签

    var DS; DS = CallIVRAjaxClass.GetBranchCallCount().value; var obj = {}; obj.branch = "_branch&q ...

  10. 树莓派搭建seafile服务器备忘

    用户:pi 密码:raspberry 启用root用户https://blog.csdn.net/chenxd1101/article/details/53437925(防止特殊原因pi用户不能登录时 ...