您的位置:首页 > 编程语言 > Python开发

Python 【列表】 学习笔记

2018-02-26 12:45 441 查看

列表

序列是Python中基本数据结构。序列中每个元素都分配到一个数字(它的位置或索引值)第一位索引值是0,第二位是1,以此类推。Python有6个序列的内置类型,
但最常见的是列表和元组。序列都可以进行的操作包括索引,切片,加,乘,检查成员。此外,Python已经内置确定序列的长度以及确定最大和最小的元素的方法。列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现。列表的数据项不需要具有相同的类型创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。如下所示:list1 = ['Google', 'Runoob', 1997, 2000];list2 = [1, 2, 3, 4, 5 ];list3 = ["a", "b", "c", "d"];与字符串的索引一样,列表索引从0开始。列表可以进行截取、组合等。

创建列表

方法:
                    x =[ ]        #此赋值x为列表,列表可容纳不限类型的各种对象,包括在列表中添加列表对象。

访问列表中的对象

方法:                    x.index(obj)        #查找x列表内obj的索引值 
                    x.[index]        #访问x列表内index(索引值)位置的对象                    x.[start,stop,step]        #start至stop可选取查找范围,step为步长

添加元素进列表

三种方法:                     x.append(obj)         #向列表内添加obj至末尾
                    x.extend([obj])        #一次性像x列表添加obj的多个内容至末尾(用新列表扩展原列表)
                    x.insert(index,obj)        #像x列表内指定位置index,插入内容obj删除,清空列表内元素 三种方法:
                    x.remove(obj)        #移除x列表内的obj的第一个对象
                    x.pop(obj)        #提取x列表内obj的对象并返回该对象,故可直接赋值提取内容 a=x.pop(1)。obj为空默认提取x列表末位

                    del x[index]        #删除x列表内index位置的对象,也可直接删除x列表  del x
清空方法:
                    x.clear()        #清空x列表内容,此时x以空列表形式存在。
列表分片(切片,截取)slice方法:
                    x[start:stop:step]        #获得x列表从start至stop之间的对象,但不包含stop位的对象,step为获取对象内的步长。start为空从索引值0开始,stop为空截取至列表末位,-step为反向获取列表内的对象,获得列表内容不影响原列表内的对象更新,嵌套列表方法:
                    #可直接赋值列表index位置的对象进行覆盖                     如需改变列表x["a",["a","b"],"c",["d","e"],"f"]内b的对象为z,可如下操作x[1][1] = "z" 来覆盖,z也可以是列表 排序列表
方法:
                    x.reverse()        #将列表内容反转,将最后一个对象变为第一个对象

                    x.sort()        #()为空则默认内容为(reverse=False),正序排列列表内容,倒序用x.sort(reverse=True)实现

列表推导式
                    列表推导式(List comprehensions)也叫列表解析,灵感取自函数式编程语言 Haskell。Ta 是一个非常有用和灵活的工具,可以用来动态的创建列表,   [ i*i for i in range(10) ]  结果为 [0, 1, 4, 9, 16, 25, 36, 49, 64, 81] 
                    例如  >>> list1 = [x**2 for x in range(10)] 
                              >>> list1
                              >>> [0, 1, 4, 9, 16, 25, 36, 49, 64, 81] 

                    相当于  list1 = [ ] 
                                  for x in range(10): 
                                      list1.append(x**2)  

Python列表脚本操作符

列表对 + 和 * 的操作符与字符串相似。+ 号用于组合列表,* 号用于重复列表。如下所示:
Python 表达式结果描述
len([1, 2, 3])3长度
[1, 2, 3] + [4, 5, 6][1, 2, 3, 4, 5, 6]组合
['Hi!'] * 4['Hi!', 'Hi!', 'Hi!', 'Hi!']重复
3 in [1, 2, 3]True元素是否存在于列表中
for x in [1, 2, 3]: print(x, end=" ")1 2 3迭代

Python列表函数&方法

Python包含以下函数:
序号函数
1len(list)         列表元素个数
2max(list)         返回列表元素最大值
3min(list)         返回列表元素最小值
4list(seq)         将元组转换为列表
Python包含以下方法:
序号方法
1list.append(obj)         在列表末尾添加新的对象
2list.count(obj)         统计某个元素在列表中出现的次数
3list.extend(seq)         在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
4list.index(obj)         从列表中找出某个值第一个匹配项的索引位置
5list.insert(index, obj)         将对象插入列表
6list.pop(obj=list[-1])         移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
7list.remove(obj)         移除列表中某个值的第一个匹配项
8list.reverse()         反向列表中元素
9list.sort([func])         对原列表进行排序
10list.clear()         清空列表
11list.copy()         复制列表
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: