zoukankan      html  css  js  c++  java
  • 【Python】list和tuple 区别比较

    列表 List

    classmates = ['Michael', 'Bob', 'Tracy']
    

    元组 Tuple

    tuple一旦初始化就不能修改,比如同样是列出同学的名字:

    >>> classmates = ('Michael', 'Bob', 'Tracy')
    

    现在,classmates这个tuple不能变了,它也没有append(),insert()这样的方法。其他获取元素的方法和list是一样的,你可以正常地使用classmates[0],classmates[-1],但不能赋值成另外的元素。

    tuple所谓的“不变”是说,tuple的每个元素,指向永远不变。

    • 不可变的tuple有什么意义?因为tuple不可变,所以代码更安全。如果可能,能用tuple代替list就尽量用tuple

    但是,要定义一个只有1个元素的tuple,如果你这么定义:

    >>> t = (1)
    >>> t
    1
    

    定义的不是tuple,是1这个数!这是因为括号()既可以表示tuple,又可以表示数学公式中的小括号,这就产生了歧义,因此,Python规定,这种情况下,按小括号进行计算,计算结果自然是1。

    所以,只有1个元素的tuple定义时必须加一个逗号,,来消除歧义:

    >>> t = (1,)
    >>> t
    (1,)
    
  • 相关阅读:
    排序算法之冒泡排序
    hadoop程序启动
    开播小记
    3.3面向对象封装案例1摆家具
    3.2面向对象基础语法
    3.1类和对象
    2.12函数进阶
    2.11变量的引用_可变不可变类型_局部变量和全局变量
    2.10第二章综合应用_名片管理系统
    2.8函数基础
  • 原文地址:https://www.cnblogs.com/Neo007/p/7356964.html
Copyright © 2011-2022 走看看