Python从零开始系列连载(18)——Python特色数据类型(列表)(中)

浏览: 6360

前言

前文传送门:

Python从零开始系列连载(1)——安装环境

Python从零开始系列连载(2)——jupyter的常用操作(上)

Python从零开始系列连载(3)——jupyter的常用操作(中)

Python从零开始系列连载(4)——jupyter的常用操作(下)

Python从零开始系列连载(5)——Python的基本数据类型(上)

Python从零开始系列连载(6)——Python的基本数据类型(中)

Python从零开始系列连载(7)——Python的基本数据类型(中二)

Python从零开始系列连载(8)——Python的基本数据类型(下)

Python从零开始系列连载(9)——Python的基本运算和表达式(上)

Python从零开始系列连载(10)——Python的基本运算和表达式(中)

Python从零开始系列连载(11)——Python的基本运算和表达式(中二)

Python从零开始系列连载(12)——Python的基本运算和表达式(下)

Python从零开始系列连载(13)——Python程序的基本控制流程(上)

Python从零开始系列连载(14)——Python程序的基本控制流程(中) 

Python从零开始系列连载(15)——Python程序的基本控制流程(中二)

Python从零开始系列连载(16)——Python程序的基本控制流程(下)

Python从零开始系列连载(17)——Python特色数据类型(列表)(上)


(划重点:这篇我不发表情,我是认真的!)

列表切片


列表切片指的是将列表的一部分切出来,有点像字符串切片

列表切片的形式是:

list[起始索引:终止索引(不包含):步长间隔]


Clipboard Image.png


还有一些特殊的切片省略:


Clipboard Image.png

Clipboard Image.png


我们来看个好玩的:


Clipboard Image.png


这说明什么?你好好思考我们之前讲过的id()函数


修改列表元素


列表是一种可变的数据类型,所以可以修改其内容


Clipboard Image.png


列表的一些方法

针对列表,可以有一些方法操作列表,这里的方法可以理解为函数


Clipboard Image.png


我们分别演示一下:


1.list.append( obj )

在列表末尾添加新的对象


Clipboard Image.png


2.list.count( obj )

统计某个元素在列表中出现的次数


Clipboard Image.png


这里分别统计了list1中字符串1和整型1出现的次数


3.list.extend(seq)

在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)


Clipboard Image.png


extend添加单个元素和append很像,但他可以一次添加更多元素,元素可以是列表


4.list.index(obj)

从列表中找出某个值第一个匹配项的索引位置

Clipboard Image.png


在第一个索引位置就找到了值为1的元素


5.list.insert(index, obj)

将对象插入列表


index是插入的位置,obj是插入的内容


Clipboard Image.png


可以看出,我们指定的索引是2,最后‘a’插在了原来索引2的元素 3 的前面


Clipboard Image.png


当然,我们也可以插入一个列表


6.list.pop(obj=list[-1])

移除列表中的一个元素(默认最后一个元素),并且返回该元素的值


Clipboard Image.png


可以看出,执行这个方法有返回值,返回值是被删除的那个列表最后一个元素


我们也可以指定删除的索引


Clipboard Image.png


7.list.remove(obj)

移除列表中某个值的第一个匹配项


Clipboard Image.png


8.list.reverse()

反向列表中元素


Clipboard Image.png


和list4[::-1]效果一样


9.list.sort([func])

对原列表进行排序


Clipboard Image.png


字符串也是能比较大小的,你还记得么?不记得就去回顾字符串那节课:


Clipboard Image.png


这里默认为升序,如果我要逆序排列呢?


Clipboard Image.png


今天作业是自己跟着操作一遍~

自己不敲代码永远学不会写代码


下课

人生苦短,我选Python

未完待续,连载中......

现在还坚持再看连载学习的你们真的很棒棒!


(划重点:这篇我不发表情,我是认真的!)

首尾呼应的修辞手法


下一篇:Python从零开始系列连载(19)——Python特色数据类型(列表)(下)

推荐 7
本文由 ID王大伟 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

5 个评论

list2.remove('[1,2,3]')
list2

---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
<ipython-input-102-c459762a8735> in <module>()
----> 1 list2.remove('[1,2,3]')
2 list2

ValueError: list.remove(x): x not in list
RT:
老师怎么去除列表当中的列表呐?
根据提示 ValueError: list.remove(x): x not in list 应该是你已经删除了
老师,关于id那个还是不太明白,按理说如果id相同的话用is表达式判断两个变量不就应该是True 了吗?
代码如下:
list1 = [1,2,3,4,5,6]
print(id(list1))
print(id(list1[:]))
list2 = [1,2,3,4,5,6]
print(id(list2))
print(id(list2[:]))
print(list2 is list1[:])

结果:
2262771196488
2262771196552
2262771196552
2262771683144
False

idea是pychrm
少了个a...
pycharm
老师,id(list1)是列表list1的内存地址吧?那id(list1[:])是个啥啊?

要回复文章请先登录注册