列表list

是一种有序的集合 ,假定list的名字为class

list的元素个数:len( class)

访问元素:

a. 索引从0开始    b. 也可以使用[-1],[-2],[-3] 从后面访问元素

添加元素

a. append方法  , 该方法是默认添加元素到末尾     class.append('adam')

b. insert方法, 该方法能把元素添加到指定的索引位置   class.insert (1,'lily')

删除元素

pop方法

pop( ):括号内为空时,默认删除末尾的元素

pop( i ):这种是通过索引号 i 来删除指定位置的元素

替换元素

list表名[索引号]=新元素

下图是列表List的定义、各种方法的示例:

元组tuple

是一种有序列表

tuple和list 非常相似,但tuple一旦初始化就不能修改

现在,classmates就不能修改了,它没有append( ), insert( ),pop( )这样的添加、删除元素的方法。

访问元素

和list一样 , classmates[0], classmates[1], classmates[-1]

不可变的tuple有什么意义?

因为tuple不可变,所以代码更安全,如果可能,能用tuple代替list ,就尽量用tuple。

如果tuple只有一个元素时:

按上图中定义时,定义的不是元组tuple,是1这个数,因为()既可以表示tuple, 也可以表示数学公式中的小括号,这就产生了歧义。

因此,python规定,这种情况下,表示数学意义上的小括号,计算结果是1.

所以只有一个元素时,必须添加一个逗号, 来消除歧义

python 在显示只有一个元素的tuple时,也会加一个逗号, , 以免使用者理解成数学意义上的括号。

tuple中所谓的“不变”是说,tuple的每个元素,指向永远不变,即指向元素'a', 就不能指向元素'b', 指向一个list,就不能改成指向其他对象,但指向的这个list本身是可变的。

下图是元组tuple的示例:

list 和 tuple 的区别:

(1)定义上的区别:list使用中括号,tuple使用小括号

(2)元素上的区别:list是可变的,tuple是不可变的

共同点:

访问元素时,都是列表名[ ]形式,是中括号,不是小括号。

python内置类型:列表,包括 list 和 tuple的更多相关文章

  1. Python 内置类型 dict, list,线程安全吗

    近段时间发现一个 Python 连接数据库的连接是线程不安全的,结果惹得我哪哪儿都怀疑变量的多线程是否安全的问题,今天终于找到了正确答案,那就是 Python 内置类型 dict,list ,tupl ...

  2. Python——内置类型

    Python定义了丰富的数据类型,包括: 数值型:int, float, complex 序列:(iterable) str, unicode, tuple, list, bytearray, buf ...

  3. 为什么继承 Python 内置类型会出问题?!

    本文出自"Python为什么"系列,请查看全部文章 不久前,Python猫 给大家推荐了一本书<流畅的Python>(点击可跳转阅读),那篇文章有比较多的"溢 ...

  4. Python内置类型性能分析

    Python内置类型性能分析 timeit模块 timeit模块可以用来测试一小段Python代码的执行速度. class timeit.Timer(stmt='pass', setup='pass' ...

  5. 3、python内置类型(0529)

    python的内置对象类型以及支持的运算 python对象的相关术语 python程序中保存的所有数据都是围绕对象这个概念展开的 程序中存储的所有数据都是对象 每个对象都有一个身份.一个类型和一个值 ...

  6. python内置类型详细解释

    文章编写借鉴于内置类型 - Python 3.7.3 文档,主要用于自己学习和记录 python主要内置类型包括数字.序列.映射.类.实例和异常 有些多项集类是可变的.它们用于添加.移除或重排其成员的 ...

  7. 易被忽略的Python内置类型

    Python中的内置类型是我们开发中最常见的,很多人都能熟练的使用它们. 然而有一些内置类型确实不那么常见的,或者说往往会被我们忽略,所以这次的主题就是带领大家重新认识这些"不同寻常&quo ...

  8. Python内置类型——set

    Python中,内置类型set和frozenset用来表示集合,我们首先查看这两个类型支持的特殊对象,从而可以理解他们的特性. >>> dir(set) ['__and__', '_ ...

  9. Python内置类型——list

    list(列表)是Python内置的可变序列(Sequence)类型,list的对象的方法也都是就地(in-place)更改调用这些方法的列表对象, List的一些细节 可以直接为list的某个下标赋 ...

随机推荐

  1. Java ee第五周作业

    Applet: Applet是采用Java编程语言编写的小应用程序,该程序可以包含在 HTML(标准通用标记语言的一个应用)页中,与在页中包含图像的方式大致相同. 含有Applet的网页的HTML文件 ...

  2. 【Python基础】zip函数的使用

    zip函数的使用 描述 zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表. 如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同, ...

  3. Docker入门4------Dockerfile

    转自:https://www.cnblogs.com/jsonhc/p/7766841.html https://www.cnblogs.com/jsonhc/p/7767669.html Docke ...

  4. 为虚拟机配置NAT网络

    一.打开网络适配器 1.按图中所示进行配置 2.记得把网和VM8关联一下 3.点击网络设置 4.点击右下角小齿轮来配置ip 5.在IPv4下选择手动 6. 7. 这个就是Linux的NAT配置

  5. 一年工作经验的大专生程序员(java后台)

    1.文章前言     作为18应届毕业大专生已工作一年,相信这也是大部分同届生的现状.       那么,一个萌新进入职场一年都经历了什么呢?在校那会我是挺好奇的.       这篇文章是根据自己一年 ...

  6. 《Java程序设计》 第五周学习总结

    学号 20175313 <Java程序设计>第五周学习总结 教材学习内容总结 第六章主要内容 掌握接口的定义 接口声明:interface 接口名 接口体:包含常量的声明和抽象方法. 接口 ...

  7. node Sream

    const fs = require('fs'); let readerStream = fs.createReadStream('input.txt'); let writerStream = fs ...

  8. [js]js设计模式-构造函数模式

    构造函数模式 function WriteJsPerson(name,age) { this.name=name; //不用手动创建obj this.age = age; this.writeJs=f ...

  9. 小程序movable-area置于顶层遮盖下方元素无法操作的解决方案

    小程序项目中有个需求,右下角按钮可以在页面中随意拖动,此时查看文档找到了一个自带的标签可以实现此功能,代码如下 <movable-area> <movable-view x=&quo ...

  10. (转载)Java多线程返回值处理

    一.概述 到目前为止,我们已经能够声明并使一个线程任务运行起来了.但是遇到一个问题:现在定义的任务都没有任何返回值,那么加入我们希望一个任务运行结束后告诉我一个结果,该结果表名任务执行成功或失败,此时 ...