Python学习(5)--列表

简介: Python学习(5)--列表 1.列表 列表和上一节所说的元组一样,都可以盛放不同数据类型的元素.定义列表与定义元组的不同,只是列表将元素用方括号括起来.下面将会比较元组与列表的不同之处,来学习列表。

Python学习(5)--列表

1.列表

列表和上一节所说的元组一样,都可以盛放不同数据类型的元素.定义列表与定义元组的不同,只是列表将元素用方括号括起来.下面将会比较元组与列表的不同之处,来学习列表。

先看代码:

[python] view plain copy

  1. list=['zhangsan',12,'man']
  2. print(list[0])
  3. print(list[1])
  4. print(list[2])

代码运行结果如下:

通过代码可以看出我们定义了一个列表list,通过索引下标我们不仅可以获取列表list中的

每一个元素,还可以修改列表元素,但是元组不能修改元组元素.看下以下代码:

[python] view plain copy

  1. list=['zhangsan',12,'man']
  2. print(list)
  3. list[0]='lisi'
  4. print(list)

 

以下是运行结果:

可以看出列表list修改了的第一个元素list[0].而元组是不能修改元素的,如下代码:

[python] view plain copy

  1. t=('zhangsan',12,'man')
  2. t[0]='lisi'

代码结果如下:

通过运行结果可以看到在python中,元组并不支持元素的修改.如果想修改元组中元素,只能在内存中重新开辟出一块空间,并修改变量在内存中指向的地址,让变量指向新的存储空间.代码如下:

[python] view plain copy

  1. t=('zhangsan',12,'man')
  2. print(t)
  3. print(id(t))
  4. t=('lisi',12,'man')
  5. print(t)
  6. print(id(t))

以下是代码运行结果:

通过代码可以看出列表t的第一个元素'zhangsan'修改成了'lisi',但是通过打印id可以发现,元组t指向的存储空间已经改变,python重新开辟出一块内存空间来存储('lisi',12,'man').

而列表的元素修改则是在原来的存储空间上修改,并不会像元组那样重新开辟出一块内存

来存储列表.代码如下:

[python] view plain copy

  1. list=['zhangsan',12,'man']
  2. print(list)
  3. print(id(list))#打印list修改之前的id
  4. list[0]='lisi'
  5. print(list)
  6. print(id(list))#打印list修改之后的id

打印结果如下:

可以看出虽然修改了元组list的第一个元素,但是list指向的内存空间的地址并没有改变.也就是说对列表元素的修改是在原有内存空间的基础上修改的,并没有像元组那样重新开辟出新的内存来存储新的内容,这也启发我们如果处理大量需要修改的数据,使用列表比较好,否则可以使用元组.

下面介绍下有关列表插入删除的操作,先看代码如下:

[python] view plain copy

  1. list=['zhangsan',12,'man']
  2. print(list);
  3. list.append("1587335928");
  4. print(list);
  5. list.remove(list[3]);
  6. print(list);

以下是代码运行结果:


在列表后面添加元素使用的是append(Object)方法,删除元素使用的是remove(Object)方法,这个方法会删除列表中第一个与Object匹配的元素,代码如下:

[python] view plain copy

  1. list=['zhangsan',12,'man']
  2. print(list)
  3. list.append("1587335928");
  4. list.append("1587335928");
  5. print(list)
  6. list.remove("1587335928");
  7. print(list)

打印结果如下:

可以看到列表只是删除了第一个与被删元素匹配的元素,并没有删除所有的元素。

下一节我们将会介绍python中很重要也非常常用的字典,上一节的排版不是很好,在手机上的显示效果有一部分文字溢出了屏幕,通过拖拽可以看到,敬请见谅

原文地址http://www.bieryun.com/2293.html

相关文章
|
3月前
|
存储 JavaScript Java
(Python基础)新时代语言!一起学习Python吧!(四):dict字典和set类型;切片类型、列表生成式;map和reduce迭代器;filter过滤函数、sorted排序函数;lambda函数
dict字典 Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度。 我们可以通过声明JS对象一样的方式声明dict
297 1
|
3月前
|
存储 Java 数据处理
(numpy)Python做数据处理必备框架!(一):认识numpy;从概念层面开始学习ndarray数组:形状、数组转置、数值范围、矩阵...
Numpy是什么? numpy是Python中科学计算的基础包。 它是一个Python库,提供多维数组对象、各种派生对象(例如掩码数组和矩阵)以及用于对数组进行快速操作的各种方法,包括数学、逻辑、形状操作、排序、选择、I/0 、离散傅里叶变换、基本线性代数、基本统计运算、随机模拟等等。 Numpy能做什么? numpy的部分功能如下: ndarray,一个具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组 用于对整组数据进行快速运算的标准数学函数(无需编写循环)。 用于读写磁盘数据的工具以及用于操作内存映射文件的工具。 线性代数、随机数生成以及傅里叶变换功能。 用于集成由C、C++
392 0
|
3月前
|
算法 Java Docker
(Python基础)新时代语言!一起学习Python吧!(三):IF条件判断和match匹配;Python中的循环:for...in、while循环;循环操作关键字;Python函数使用方法
IF 条件判断 使用if语句,对条件进行判断 true则执行代码块缩进语句 false则不执行代码块缩进语句,如果有else 或 elif 则进入相应的规则中执行
369 1
|
3月前
|
开发者 Python
Python列表推导式:优雅与效率的完美结合
Python列表推导式:优雅与效率的完美结合
453 116
|
3月前
|
大数据 开发者 Python
Python列表推导式:简洁与高效的艺术
Python列表推导式:简洁与高效的艺术
395 109
|
3月前
|
Python
Python列表推导式:简洁与高效的艺术
Python列表推导式:简洁与高效的艺术
478 119
|
3月前
|
开发者 Python
Python列表推导式:优雅与效率的完美融合
Python列表推导式:优雅与效率的完美融合
346 104
|
3月前
|
Python
Python列表推导式:优雅与效率的艺术
Python列表推导式:优雅与效率的艺术
321 99
|
3月前
|
数据处理 Python
解锁Python列表推导式:优雅与效率的完美融合
解锁Python列表推导式:优雅与效率的完美融合
296 99
|
3月前
|
开发者 Python
Python列表推导式:一行代码的艺术与力量
Python列表推导式:一行代码的艺术与力量
458 95

推荐镜像

更多