zoukankan      html  css  js  c++  java
  • Python数据结构之二——tuple(元组)

      Python版本:3.6.2  操作系统:Windows  作者:SmallWZQ

      列表和元组是Python中最常见的内建序列。元组与列表一样,但是tuple一旦创建就不能修改。创建元组的语法非常简单,示例如下:

      >>> 1,2,3

      (1,2,3)

      如果您用逗号分隔了一些值,那么您就自动创建了tuple。一旦创建,tuple内容就是固定的。

      tuple格式如下:

      t = (1,),小括号。

      1.元组索引

      tuple创建后,不能通过append()、pop()、insert()、remove()等方法改变tuple的内容。然而tuple是可以被索引访问的,即获取tuple元素的方法与list类似,但元素值不可被修改。  

      >>> t = (1,2,3,4,5,6)

      >>> t[0]

      1

      如代码所示,tuple可以正常地通过索引(t[0],t[-1]......)访问元素值。

      2.元组陷阱

      创建元组时,需要特别注意元组中只有一个值的情况。Python的数据类型包括tuple、int等等。因此,当tuple中包含一个元素的时候,不能遗漏逗号。

      >>> t = (56)

      >>> t

      56  

      >>> t = (56,)

      >>> t

      (56,)

      注:定义一个空的tuple,可以写成()。

      3.元组方法

      由于元组是不可变的,所以元组支持的方法很少,与list无法相提并论。tuple仅仅支持index()、count()等极少数的方法。话不多说,直接上图。

      

                       图1 tuple方法介绍

      4.tuple()

      与list()一样,功能:以一个序列作为参数并把它转换为tuple。  

      >>> tuple([1,2,3])

      (1,2,3)

      >>> tuple('abc')

      ('a','b','c')

      >>> tuple((1,2,3))

      (1,2,3)

      5.不可替代性

      tuple是不可变序列,它有存在的必要吗?它的意义在哪?......面对这一系列的疑问,我也查过很多的资料,包括Python基础教程、廖晓峰教程等等。tuple不可替代的原因:1.安全性;2.键(key)。

      因为tuple不可变,所以代码更安全。如果可能,能用tuple代替list就尽量用tuple。(来自廖老师的教程)

      tuple可以在映射(和集合的成员)中当作键(key)使用——而列表不行。

      tuple作为很多内建函数和方法的返回值存在,也就是说您必须对元组进行处理。

      >>>def f():

          return 2,3

      >>>f()

      (2,3)

      返回值为元组类型

      tuple总结

      1.tuple是不可变的序列。

  • 相关阅读:
    孙陶然的五行文化,学习,真实用
    查看CPU使用率
    卸载windows补丁
    结束普通方法无法结束的进程
    三观
    如何知道一个EXE使用什么开发语言开发的
    文本文件处理,删除其中含有某些字符文本的行,一行命令搞定
    Delphi 字符串转日期,强大到窒息,VarToDateTime 解决了 困扰很久的小问题
    netstat -an查看到大量的TIME_WAIT状态的解决办法
    跨平台开发应用
  • 原文地址:https://www.cnblogs.com/SmallWZQ/p/8442604.html
Copyright © 2011-2022 走看看