窝的Python学习之路001 列表

  • 数组:各元素类型 必须 一致
    列表:各元素类型 不必 一致

创建列表

创建一个普通列表

menber = ['Cytosine','Bob','Snape','Amy']

创建一个混合列表

mix = [1,'Cytosine',3.14, [1,2,3] ]

创建一个空列表

empty = []

向列表里添加元素

append()

menber.append('Lucy')

append只能带一个参数

extend()

menber.extend(['Lily','Candy'])

使用一个列表扩展另一个列表

insert()

menber.insert(0,'White')

两个参数:
第一个参数,插入的位置,从0开始
第二个参数,插入的内容

删除元素

remove()

menber.remove('Lucy')

不需要知道元素在列表中的位置,只要这个元素在这个列表中即可。
元素不在列表中,则抛出异常。

del

#删除member中的第二个元素
del member[1]

#删除整个memder
del memder

pop()

member.pop() 

pop()返回删除掉的值,所以还可以:

name = member.pop()

pop()还可以带参数,参数是想要删除的元素的索引:

member.pop(0)

列表分片 Slice

  • 取member[1]和member[2]
member[1:3]
  • 取member[0],member[1],member[2]
member[:3]
  • 取member[3],...,member的最后一个元素
member[3:]

列表的比较

>>> list1 = [123]
>>> list2 = [234]
>>> list1 > list2
False
>>> list1 = [123,456]
>>> list2 = [234,123]
>>> list1 > list2
False

从索引为0的元素开始,只要列表A中的第index个元素大于列表B中的第index元素,列表A则大于列表B。

列表的相加

>>> list1 = [123,456]
>>> list2 = [234,123]
>>> list3 = list1 + list2
>>> list3
[123, 456, 234, 123]
>>> 

不建议直接使用+,建议使用 extend()代替。

列表的*

>>> list1
[123, 456]
>>> list1 * 3
[123, 456, 123, 456, 123, 456]

>>> list1 = [123,456]
>>> list1
[123, 456]
>>> list1 *=3
>>> list1
[123, 456, 123, 456, 123, 456]

列表的成员关系运算符

>>> list1 = [123,456]
>>> list1
[123, 456]
>>> 123 in list1
True
>>> 234 not in list1
True

注意

>>> list2 = [123, ['Cytosine', 'Amy'], 456]
>>> 'Cytosine' in list2
False
>>> 'Cytosine' in list2[1]
True

访问列表中列表的元素

类似C语言二维数组:

>>> list2 = [123, ['Cytosine', 'Amy'], 456]
>>> list2[1][0]
'Cytosine'

其他

count()

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

>>> list1
[123, 456]
>>> list1 *= 5
>>> list1
[123, 456, 123, 456, 123, 456, 123, 456, 123, 456]
>>> list1.count(123)
5

index()

返回元素在列表中第一次出现的索引。
带一个参数:需要查找的元素。
带三个参数:需要查找的元素,起始查找位置,终止查找位置

>>> list1
[123, 456, 123, 456, 123, 456, 123, 456, 123, 456]
>>> list1.index(123)
0
>>> list1.index(123, 3, 7)
4

reverse()

倒置列表

>>> list1 = [1, 2, 3, 4, 5, 6]
>>> list1.reverse()
>>> list1
[6, 5, 4, 3, 2, 1]

sort()

  • 排序。
  • 不带参数时,默认从小到大。
  • 从大到小排序:
list1.sort(reverse=True)
  • sort(func ,key, reverse)
    排序算法,排序算法中的关键字,从小到大还是从大到小。
    排序算法默认是归并排序。
    reverse默认是reverse=False,从小到大。

列表的拷贝

方法一:分片

list2 = list1[:]

不能使用 list3 = list1 !!!重点

你可能感兴趣的:(窝的Python学习之路001 列表)