• 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
        ('小明', '小华', '小亮', '小红', '小李')

  • 相关阅读:
    [公告]Google个性化主页可以正常阅读博客园的RSS了
    致歉
    [公告]网站程序已经升级到ASP.NET 2.0
    GTF: Great Teacher Friedman
    Node.js : exports と module.exports の違い
    拨开历史的迷雾从篡夺者战争到五王之战的政经原因
    javascript模板系统 ejs v10
    window.name + postMessage实现不用代理页的跨域通信
    node.js Domain 時代のエラー処理のコーディングパターン
    鲜为人知的get,set操作符
  • 原文地址:https://www.cnblogs.com/carlber/p/9381335.html
Copyright © 2020-2023  润新知