首页 > 编程 > Python > 正文

python学习笔记--列表(list)

2019-11-08 02:46:40
字体:
来源:转载
供稿:网友

学过C/C++等语言后,Python中的列表理解起来其实并不困难,Python中的列表类似于C/C++中的数组,但操作起来比数组灵活得多。列表是由一系列按特定顺序排列而成的元素组成,在同一列表的元素可以是同一类型的,也可以是不同类型的。

一、创建列表。

可以用以下方法创建一个空列表:

first_list=[]

当然也可以创建的时候直接赋值:

>>> first_list=[1,2,3,4,5,6]>>> first_list[1, 2, 3, 4, 5, 6]也可以将一个列表当做另一个列表的元素,实现嵌套

>>> list1=[1,2]>>> list2=[3,4]>>> lists=[list1,list2]>>> lists[[1, 2], [3, 4]]>>> lists[0][0]1>>> lists[1][1]4还可以使用方法range()来创建数字列表在命令行直接写会出现错误,所以在文件中写,然后运行即可

test_list=list(range(2,10))PRint(test_list)运行结果:
[2, 3, 4, 5, 6, 7, 8, 9]二、访问列表1、使用索引访问列表时,索引可以是正值,0,负值。
>>> first_list[1]2>>> first_list[-1]62、使用切片来访问列表,格式为list[index1,index2],这种方法返回list中下标在[index1,index2)之间的元素

>>> test_list=[2,5,8,3,6,9]>>> slice_list=test_list[1:5]>>> slice_list[5, 8, 3, 6]>>> slice_list=test_list[2:]>>> slice_list[8, 3, 6, 9]>>> slice_list=test_list[:3]>>> slice_list[2, 5, 8]3、使用for..in..遍历列表中的元素

>>> test_list=[2,5,8,3,6,9]>>> for val in test_list:	print(val)	258369三、添加元素。列表有3种方式添加元素::1、使用方法append(obj)向列表末尾添加一个元素obj,此元素可以是列表,2、方法是使用方法insert(index,obj)在位置index添加元素obj。使用insert(index,obj)方法时要注意Python的列表下标是从0开始的。3、使用extend(list)在列表末尾添加另一个列表的所有元素,实现一次添加多个元素。

>>> first_list[1, 2, 3, 4, 5, 6]>>> first_list.append(7)>>> first_list[1, 2, 3, 4, 5, 6, 7]>>> first_list.insert(2,0)>>> first_list[1, 2, 0, 3, 4, 5, 6, 7]>>> list1=[1,2]>>> list2=[3,4]>>> list1.extend(list2)>>> list1[1, 2, 3, 4]
>>> list1=[1,2]>>> list2=[3,4]>>> list1.append(list2)  #注意和extend(list)的差别>>> list1[1, 2, [3, 4]]四、删除元素。删除元素有3中方式:1、使用del语句删除元素;2、使用方法pop()方法删除列表末位元素或使用pop(index)删除列表index位置的函数,而且pop()方法会返回要删除元素的值;3、使用remove(obj)直接根据值而不是索引来删除元素.

>>> del first_list[0]      #使用del删除元素>>> first_list[2, 0, 3, 4, 5, 6, 7]>>> first_list.pop()   #使用pop()删除末位元素7>>> first_list[2, 0, 3, 4, 5, 6]>>> first_list.pop(3)  #使用pop(pos)删除first_list[pos]4>>> first_list[2, 0, 3, 5, 6]>>> first_list.remove(5)   #使用remove(value)删除value>>> first_list[2, 0, 3, 6]若列表中有多个相同的值,方法remove(obj)只删除列表中第一个值obj

>>> test_list=[1,2,1]>>> test_list.remove(1)>>> test_list[2, 1]

五、排序

1、使用方法sort()对列表进行永久排序,如果是字符串则按照字母表顺序排序,默认升序。

>>> first_list[2, 0, 3, 6]>>> first_list.sort()>>> first_list[0, 2, 3, 6]

还可以向sort()传递参数reverse=True来降序排序。

>>> test_list=[2,0,3,6]>>> test_list.sort(reverse=True)>>> test_list[6, 3, 2, 0]2、使用sorted()来临时排序,看以下代码:

>>> first_list=[2,0,3,6]>>> print(sorted(first_list))[0, 2, 3, 6]>>> first_list[2, 0, 3, 6]

也可以向sorted()传递参数reverse=True来降序排序:

>>> first_list=[2,0,3,6]>>> print(sorted(first_list,reverse=True))[6, 3, 2, 0]>>> first_list[2, 0, 3, 6]

六、其他方法1、方法Index(obj)返回obj在list中的下标,如果有多个相同的值,则返回下标最小的,如果obj不在list中,则产生错误。

>>> test_list=[2,0,3,6]>>> test_list.index(2)0     #test_list[0]=2>>> test_list.index(1)Traceback (most recent call last):  File "<pyshell#68>", line 1, in <module>    test_list.index(1)ValueError: 1 is not in list>>> test_list=[1,2,1]>>> test_list.index(1)02、方法count(obj)用来计算obj在list中出现的次数

>>> test_list=[1,2,1]>>> test_list.count(1)2>>> test_list.count(2)1>>> test_list.count(3)03、使用len(list)确定列表list的长度

>>> test_list=[1,2,3,4,5,6,7,8,9,0]>>> len(test_list)104、使用clear()清空列表

>>> test_list=[1,2,3,4,5,6,7,8,9,0]>>> test_list[1, 2, 3, 4, 5, 6, 7, 8, 9, 0]>>> test_list.clear()>>> test_list[]


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表