Python列表

列表不同于字符串和元组:列表是可变的——可以改变列表的内容

1、列表函数

1、list(x)函数(其实是一种类型,而不是一个真正意义上的函数)

转化为列表,其中x可以是其他序列

Python列表

可以用‘’.join(somelist)将一个由字符组成的列表转化为字符串

Python列表

2、列表方法

方法定义:方法是一个和某些对象有紧密联系的函数,对象可能是列表、数字、字符串等

方法调用:对象.方法(参数)

1、append方法

用于在列表末尾追加新的对象,直接修改原列表a(可以用分片赋值实现)

Python列表

2、count方法

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

        Python列表

注意:y 和 'y' 的区别,y 是变量,‘y’ 是元素

3、extend方法

        在列表的末尾一次性追加另一个序列的多个值。直接修改原列表a(可以用分片赋值实现)

Python列表

而a+b虽然能得到同样的结果,但并没有修改a,而是返回一个新的列表

Python列表

4、index方法

用于从列表中找出某个值第一个匹配项的索引位置,当该值不存在时,异常出错

        Python列表

5、insert方法

将对象插入到列表中,(可以用分片赋值实现),修改原列表

        Python列表

6、pop方法

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

pop方法是唯一一个既能修改列表又返回元素值(除了None)的列表方法

Python列表

Python列表

可以加参数实现删除,及实现栈的先进先出:list.insert(0,x)——list.pop()或者list.pop(0)——list.pop()

7、remove方法

用于移除列表中某个值得第一个匹配项,找不到时,异常出错。修改原列表

        Python列表

8、reverse方法

将列表中的元素反向存放,

        Python列表

        

9、sort方法

在原位置上对列表进行排序,原位置上意味着改变原来的列表。不返回值

        Python列表

注意:如果需要返回一个排好序的副本,则先复制(y = x[:]),然后对y排序;不要用y=x,这样对y操作时,x也会变

Python列表

另一种方法——利用sorted()函数,且这个函数可以作用于任何序列,但总返回一个列表。

Python列表

Python列表

10、高级排序

如果希望能按特定的方式进行排序(而不是sort方法默认方式),那么可以通过compare(x,y)的形式自定义比较函数。

compare(x,y):在x<y时,返回负数;在x>y时,返回整数;x=y时,返回0定义好该函数后,可以提供给sort方法作为参数。

        以内建函数cmp(x,y)为例:

Python列表

注:sort还有两个可选的参数——key和reverse、

参数key和参数cmp类似——必须提供一个在排序过程中使用的函数。然而,该函数并不是直接用来确定对象的大小,而是为每个元素创建一个键,然后所有元素根据键来排序。比如:若要根据元素的长度来排序,那么可以使用len作为键函数

Python列表

另外一个参数reverse是简单的布尔值,用来知名是否要反向排序

Python列表

3、列表操作

索引、分片、连接、乘法等

注意:列表是可变的,可以修改的。所以本届介绍一些可以改变列表的方法。

1、改变列表:元素赋值

Python列表

注意:不能为一个不存在的元素赋值。

Python列表

2、删除元素

del语句

Python列表

3、分片赋值

Python列表

使用分片赋值,可以使用与原序列不等长的序列将分片替换。

Python列表

使用分片赋值,插入新的元素。

Python列表

使用分片赋值,删除元素

Python列表

上一篇:quantum sets


下一篇:hdu 5011 nim博弈 (2014西安网赛E题)