【技术贴】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;元组
参考技术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数据类型之列表的主要内容,如果未能解决你的问题,请参考以下文章