【技术贴】python数据类型之列表

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了【技术贴】python数据类型之列表相关的知识,希望对你有一定的参考价值。

参考技术A 列表是由一系列按特定顺序排列的元素组成的。在Python中,用[]来表示列表,并用逗号来分隔其中的元素。

我们可以创建包含字母,数字或者任何东西的列表。其中列表中的元素之间可以没有任何的关系。由于列表通常包含多个元素,再给创建的列表命名时,一般使用复数的名称,如names.

names = ["kitty","anne","jerry"]

print(names)

输出的结果为方括号[] 引号 '' 元素

['kitty', 'anne', 'jerry']

注意:列表的偏移量是从0开始的,而不是我们习惯的 1 开始

teacher=['七七','卡西','延君']

teacher[0]='七七'

teacher[1]='卡西'

teacher[2]='延君'

口诀:“左右空,取到头;左要取,右不取”

teacher=['七七','卡西','延君']

teacher[:2]=['七七','卡西']

格式:列表.append('元素名')

teacher=['七七','卡西','延君']

teacher.append('琦玉')  

# 结果为 teacher=['七七','卡西','延君','琦玉']

list.extend([元素1,元素2]):在list列表末端增加多个元素;

list.insert(元素序号,元素):在list列表任意位置增加一个元素

 

teacher=['七七','卡西','延君','琦玉']

del teacher[3]

# 结果为 teacher=['七七','卡西','延君']

>>> str=[0,1,2,3,4,5,6]

>>> del str[2:4] #删除从第2个元素开始,到第4个为止的元素(但是不包括尾部元素)

>>> str

[0, 1, 4, 5, 6]

>>> str=[0,1,2,3,4,5,6]

>>> del str

>>> str #删除后,找不到对象

Traceback (most recent call last):File "<pyshell#27>", line 1, in <module>strNameError: name 'str' is not defined

注意:del是删除引用(变量)而不是删除对象(数据),对象由自动垃圾回收机制(GC)删除。

 

1,a = list.count(元素):计算它的参数在列表中出现的次数,并将次数返回;

2,a = list.index(元素):返回它的参数在列表中的位置,返回元素序号;#若有多个元素相同,此为只返回首端起第一个。

3,a = list.index(元素, 序号1,序号2):在序号1和序号2范围内,返回列表中元素位置。 #若有多个元素相同,此为只返回首端起第一个。

4,list.reverse() == list[::-1]:将整个列表内元素反过来排列:[1, 2, 3, 4].reverse() == [4, 3, 2, 1];

5,list.sort():将所有元素,从小到大排列;

6.sorted方法

sorted返回一个有序的副本,并且类型总是列表,如下:

python基础之序列类型的方法——列表&amp;amp;元组

参考技术A 首先登场的选手是python的列表,列表属于可变类型,所以它将有完整的增删改查方法,让我们一起来看看具体是什么。

增,顾名思意就是可以对列表进行新增元素的操作,python的列表提供了三种新增元素的操作,分别是:append() ,insert(), extend()

首先是append(),它可以将一个元素追加到列表的末尾。
举个栗子:

上述代码中,我们使用的是li.append('新增内容')的方式来为列表添加元素
li.append()使列表li调用自身的方法append(),这样就可以在列表的末尾添加一个新的元素。

接下来是insert(),append()是排队,那insert()就是插队的意思啦,它可以将一个元素插入到列表的自定位置:
li.insert(索引,元素)

这样就将字符串helloworld插入到了列表的第四个位置里。

上面两个方法是对单个元素进行增加,如果我们需要增加多个元素怎么办?
那就可以使用我们的extend()来进行添加,extend()可以将序列中的每个元素添加到末尾:

上面的代码先定义了两个列表l1和l2,然后使用l1.extend(l2),将l2的每个元素添加到了l1的末尾。

增加讲完了,接下来进行删除操作,删除也有对应的四个方法:del(),pop(),remove(),clear()

del()是单独的方法,不需要通过列表本身来进行调用,可以直接使用:

上述代码删除了li[0],但是请注意,如果不进行索引的话,默认会将这个变量删除,请谨慎使用:

这就是删除了整个变量,再打印这个变量时就会提示变量未定义

pop()方法不带参数的话删除默认删除最后一个元素,带参数的话则删除指定的下标值:

pop()还有个神奇的地方,它可以让你需要删除的参数取出来继续使用,使用完了再进行删除:

上述代码使用pop()删除了第一个元素,然后使用第一个元素进行了一个简单的判断,说明pop()可以为我们返回删除的元素,让我们先使用,使用完再删除

remove()用来删除一个指定元素,无返回值,无法使用下标删除:

上述代码使用remove()删除了一个元素l

clear()用于清空列表,与del不同的是,它会为我们保留空列表,而不会把变量都删除:

上述代码清除了列表后,保留了空列表

改的方法就比较简单,直接索引出下标重新赋值即可:

这里就对li[0]进行了重新赋值

有通过index查询指定元素返回对应下标,也可以使用count来计算该元素出现过的次数:

除了增删改查,列表中还有其他的方法复制copy()、倒叙排列reverse()、从小到大排列sort()

使用li.copy(),再用一个变量接收复制的列表,就可以实现复制出一个新的列表来

sort()方法可以将数字类型的进行从小到大的排列,一般也用于同类型的排列

元组作为不可变类型,只能查和删,如果需要其他操作需要转换成列表

只能删除整个元组,无法使用下标值,删除后再使用会提示没有定义变量

元组只有查和删的方法,如果需要修改应先转成列表修改再转回元组,但是不建议这么做,因为修改过的元组就已经不是原来的那个元组了,而且设置元组也是为了这组数据不希望受到修改

以上就是关于列表&元组的方法了,有兴趣的小伙伴可以自己尝试一下。
如果有哪些错误或者不好的地方,还请各位大佬指出来,我会虚心接受并修改错误,谢谢!

以上是关于【技术贴】python数据类型之列表的主要内容,如果未能解决你的问题,请参考以下文章

python基础数据类型之列表

4.5Python数据类型之列表类型

python基本数据类型之列表和元组

Python 数据类型之列表和元组

python基础之序列类型的方法——列表&amp;amp;元组

python之数据类型