zoukankan      html  css  js  c++  java
  • Python元组_不可修改

    元组的不可修改

    1.元组是一系列的值。这些值可以是任意类型的,并且用整数序号作为索引,其实元组和列表非常相似,二者间重要的区别就是:元组不可修改。

    元组的语法是一系列用逗号分隔的值:

    >>> t = 'a', 'b', 'c', 'd'

    通常都用一对圆括号把元组的元素包括起来,这样看起来比较规范,但没有硬性要求。

    >>> t = ('a', 'b', 'c', 'd')

    要建立一个单个元素构成的元组,必须要在结尾加上逗号:

    >>> type(t1)

    <class 'tuple'>

    不加逗号结尾,就不是元组:

    >>> t1 = 'a'

    >>> type(t1)

    <class 'str'>     #如果不加逗号结尾,就是定义的字符类型str。

    只用括号放一个值,也是字符str,而不是元组:

    >>> t1 = ('a')

    >>> type(t1)

    <class 'str'>

    2.另一种建立元组的方法是使用内置函数tuple。不提供参数的情况下,默认就建立一个空的元组。

    >>> t2 = tuple()

    >>> t2

    ()

    如果参数为一个序列(比如字符串、列表或者元组),结果就会得到一个以该序列元素组成的元组:

    >>> t3 = tuple('apple')

    >>> t3

    ('a', 'p', 'p', 'l', 'e')

    从上例可以看到,tuple已经是Python内置函数了,不能用来自定义函数了。

    3.列表的各种运算符也基本适用于元组,方括号可以用来索引元素:

    >>> t3

    ('a', 'p', 'p', 'l', 'e')

    >>> t3[0]

    'a'

    >>> t3[1]

    'p'

    切片运算符也可以用于选取某一区间的元素:

    >>> t3[1:2]

    ('p',)

    >>> t3[1:3]

    ('p', 'p')

    >>> t3[1:4]

    ('p', 'p', 'l')

    >>> t3[1:5]

    ('p', 'p', 'l', 'e')

    4.但如果你想修改元组中的某个元素,就会提示类型错误了,因为元组是不能修改的,你不能修改其中的元素。

    >>> t3[0] = 'J'

    Traceback (most recent call last):

      File "<stdin>", line 1, in <module>

    TypeError: 'tuple' object does not support item assignment

    但是,我们可以用另一个元组来替换已有的元组。

    >>> t4 = ('J',) + t3[1:]

    >>> t4

    ('J', 'p', 'p', 'l', 'e')     #这里把a替换成了J

    上面这个语句建立了一个新的元组('J', 'p', 'p', 'l', 'e') ,然后让 t4 指向了这个新的元组。

    5.关系运算符也适用于元组和其它序列;Python 从每个元素的首个元素开始对比。如果相等,就对比下一个元素,依此类推,直到找到不同元素为止:

    >>> (0, 1, 2) < (0, 3, 4)

    True

    >>> (0, 1, 200) < (0, 3, 4)

    True

    >>> (0, 1, 200) > (0, 3, 4)

    False

    结束。

  • 相关阅读:
    BOOST 信号与槽,获取槽函数返回值,使用占位参数传递信号携带的参数
    单例模式,reorder详解,线程安全,双检查锁
    编程源自生活:抽象 -> 生活中的洗头问题
    前置声明透彻理解,以及和直接头文件包含的区别,注意事项
    三种工厂模式详解
    个人作品1
    Python基本汇总问题
    Json字符串转换成Json对象
    html div可以进行编辑
    父页面访问iframe页面的js
  • 原文地址:https://www.cnblogs.com/liusingbon/p/13205090.html
Copyright © 2011-2022 走看看