zoukankan      html  css  js  c++  java
  • python——元组

    python中的元组是什么?我们知道,列表是可以修改的,但是有的时候你需要创建一系列不可修改的元素,元组就是为满足这种需求而产生的。python中将不能修改的值称为不可变的,而不可变的列表称为元组。元组是一种被戴了枷锁的列表。

    1.元组的表示

      元组看起来像列表,但是它使用圆括号而不是方括号来标识。如:

      >>> list1 =(1,2,3,4,5,6)
      >>> type(list1)
        <class 'tuple'>

    2.元组的遍历

      >>> for i in list1:
      print(i)

        1
        2
        3
        4
        5
        6
      >>> list1[0]
        1
      >>> list1[5]
        6

    3.元组的区分

      虽然元组表面上看起来与列表的区别是圆括号与方括号的区别,但是圆括号不是区别元组与其他种类的根本,根本在于有无“逗号”,如下所示:

      >>> list1 = (1)                           #虽然有圆括号 但没有逗号 类型是整型
      >>> type(list1)
        <class 'int'>
      >>> list1 = 2,3,4                       #虽然无圆括号,但是有逗号 类型是元组
      >>> type(list1)
        <class 'tuple'>
      >>> list1 = ()                           #有圆括号,但无逗号,可以认为是个空元组,所以类型是元组                    

      >>> type(list1)

        <class 'tuple'>
      >>> list1 = 1,                          #  无圆括号,但有逗号,认为是元组
      >>> type(list1)
        <class 'tuple'>

    4.元组的操作

      (1)元组的重复

      >>> 8 * (1,2)                           #这里的“*”表示重复  *前面的数字表示重复元组里面的元素几次
        (1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2)

      (2)元组的重新定义

      虽然元组不能修改值,但可以对其重新定义来达到修改元组中值的目的  

      >>> list1 = ('小明','小华','小红','小李')
      >>> list1 =list1[:2] + ('小亮') + list1[2:]           #这里实际上是重新定义的整个元组,只不过把原来元组的数据取出来,在添加新元素,构成了一个新元组 
      Traceback (most recent call last):                   #注意,添加新元素时,因为这里是字符串,必须要加单引号,又因为是元组,必须加逗号,这里没加,所以报错
      File "<pyshell#43>", line 1, in <module>
      list1 =list1[:2] + ('小亮') + list1[2:]
      TypeError: can only concatenate tuple (not "str") to tuple
      >>> list1 =list1[:2] + ('小亮',) + list1[2:]                    #加逗号了,没报错
      >>> list1
        ('小明', '小华', '小亮', '小红', '小李')

  • 相关阅读:
    [转载]项目风险管理七种武器之引言
    [转载]基于TFS实践敏捷-Scrum模式运用
    [转载]基于TFS实践敏捷-工作项跟踪
    [转载]TFS入门指南
    SVN — subclipse操作指引
    Java 中 方法名或类名 变更 同时 更新 所有引用的 类名或方法名 的解决方案
    Java import javax.servlet 出错
    java 中 SVN 设置所有文件及子目录 needs-lock, svn 提交时自动设置 needs-lock, 及版本不一致问题
    vmware 传输(vmdb)错误-32:pipe:read failed 解决方法
    Web.xml配置详解
  • 原文地址:https://www.cnblogs.com/carlber/p/9381335.html
Copyright © 2011-2022 走看看