python---列表

                               列表:python的主力

列表不同于元组和字符串———列表是可变的,即可修改其内容

1.函数list

鉴于不能像修改列表那样修改字符串,因此在有些情况下使用字符串来创建列表很有帮助。为此,可以使用list函数。

注意:可将任何序列(不仅仅是字符串)作为list函数

2.基本的列表操作

可对列表执行所有的标准序列操作,如索引,切片,拼接和相乘,但列表的有趣之处在于他是可以修改的。以下将介绍一些列表修改的方式:给元素赋值、删除元素、给切片赋值以及使用列表的方法

1) 修改列表:给元素赋值

使用索引表示法给特定位置元素赋值,如

2)删除元素

从列表中删除元素也很容易,只需要使用del语句即可

3) 废给切片赋值

切片是一项及其强大的功能,而能够给切片赋值让这项功能显得更强大

>>> name = list('hello')    ###使用来创建列表这样就可以对字符串进行修改
>>> name
['h', 'e', 'l', 'l', 'o']
>>> name[3:] = list('ar')            
>>> name
['h', 'e', 'l', 'a', 'r']
>>>

从上述代码可知,可同时给多个元素赋值,还可以通过使用切片赋值,可将切片替换为长度与其不同的序列

使用切片还可在不替换原有元素的情况下插入新元素

在这里我替换了一个空切片,相当于插入了一个序列。可以采用相反的措施来删除切片

3) 列表方法

方法是与对象(列表,数,字符串等)联系紧密的函数通常向下面这样调用

object.method(arguments)

1) append  :方法append用于将一个对象添加到列表末尾

2)  clear  :方法clear就地清空列表内容    类似于切片赋值语句lst[:]=[]

3)  copy  :方法copy复制列表

常规复制只是将另一个名称关联到列表(a和b指向同一个内存空间)

要让a和b指向不同的列表,就必须将b关联到a的副本(也就是指向不同的内存空间)

4)  count  :方法count计算指定的元素在列表中出现了多少次

5)  extend  :方法extend让你能够同时将多个值附加到列表末尾,为此可将这些值组成序列作为参数提供给方法extend.。换而言之,就是用一个列表来扩展了另一个列表

这可能看起来类似于拼接,但存在一个重要的差别,那就是将修改被扩展的序列(这里是a)。在常规拼接中,情况是返回一个全新的列表

(如你所见,拼接出来的列表与前一个示例扩展得到的列表完全相同,但这里的a并没有被修改)

(鉴于常规拼接必须使用a和b的副本创建一个新列表)

6)  index  :方法index在列表中查找指定值第一次出现的索引

(搜索单词‘are’时,发现它位于索引1处,搜索'who'时发生了异常,因为根本就没有找到这个单词)

7)insert  方法insert用于将一个对象插入列表

与extend一样,也可以使用切片赋值来获得与insert一样的效果。

8)pop  :方法pop从列表中删除一个元素(默认为最后一个元素),并返还这一元素

注意:pop时唯一既修改列表又返回一个非None值的列表方法

9) remove  :方法remove用于删除第一个为指定值的元素

注意:remove时就地修改且不返回值的方法之一。不同于pop的是,它修改列表,但不返回任何值

10) reverse  :方法reverse按相反的顺序排列表中的元素

11) sort  :方法sort用于对序列就地排序。就地排序意味着对原来的列表进行修改,使其元素按顺序排列而不是返回后的列表副本

>>> x = [5,3,2,5,4,1,2]
>>> y=x.sort()   ###Don't do this!!!
>>> print(y)
None
>>>

猜你喜欢

转载自blog.csdn.net/suifengOc/article/details/81673519