发布于2019-08-07 10:25 阅读(1152) 评论(0) 点赞(3) 收藏(1)
Python列表对象的方法
list.append(n)
把一个元素添加到列表的末尾,相当于list[len(list):]=n
list.extend(L)
把另一个列表的所有元素添加到列表的末尾,相当于list[len(list):]=L
list.insert(i,x)
在列表的指定位置插入元素x,第一个参数是插入位置的索引,
当i=len(list)时相当于list.append(x)
list.remove(x)
删除表中值为x的第一个元素,如果没有这样的元素,则返回错误
list.pop(i)
从列表的指定位置删除元素,若没有指定索引,则删除最后一个元素。返回被删除的元素
list.clear()
删除列表中的所有元素,相当于del list[:]
list.index(x)
返回列表中第一个值为x的元素的索引,如果没有匹配的元素就会返回错误
list.count(x)
返回x在列表中出现的次数
list.sort()
对列表中的元素进行排序
list.reverse()
倒序排列列表中的元素
list.copy()
返回列表的一个浅拷贝,相当于list[:]
列表方法演示
a=[66.25,333,333,1,1234.5]
print(a)
a.append(6)
print(a)
L=[45,33,2]
a.extend(L)
print(a)
a.insert(2,11)
print(a)
a.remove(33)
print(a)
a.pop()
print(a)
print(a.index(1234.5))
print(a.count(66.25),a.count(333),a.count('a'))
a.sort()
print(a)
a.reverse()
print(a)
a.clear()
print(a)
像 insert , remove 或者 sort 这些修改列表的方法没有打印返回值–它们返回 None 。 在 python 中对所有可变的数据类型这是统一的设计原则
列表当做堆栈使用
列表方法使得列表可以很方便的做为一个堆栈来使用,堆栈作为特定的数据结构,最先进入的元素最后一个被释放(后进先出)。用 append() 方法可以把一个元素添加到堆栈顶。用不指定索引的 pop() 方法可以把一个元素从堆栈顶释放出来
stack=[3,4,5]
stack.append(6)
stack.append(7)
print(stack)
stack.pop()
print(stack)
stack.append(8)
print(stack)
stack.pop()
stack.pop()
print(stack)
把列表当做队列使用
队列是先进先出的数据结构,要实现队列要使用collection.deque,它为在首尾两端快速插入和删除而设计
from collections import deque
list = deque(['John','Jack','Tom'])
list.append('Mary')
print(list)
list.popleft()
print(list)
list.popleft()
print(list)
列表推导式
列表推导式为序列创建列表提供了便利。普通的应用程式通过将一些操作应用于序列的每个成员并通过返回的元素创建列表,或者通过满足特定条件的元素创建子序列
squares = []
for x in range(1,10)
squares.append(x**2)
print(squares)
上面的程序可等价于
squares = [x**2 for x in range(1,10)]
列表推导式由包含一个表达式的括号组成,表达式后面跟随一个 for 子句,之后可以有零或多个 for 或 if 子句。结果是一个列表,由表达式依据其后面的 for 和 if 子句上下文计算而来的结果构成
squares = [(x,y) for x in [1,2,4,5] for y in [2,3,4,6] if x!=y]
Tips:列表推导式中要得到元组必须加上括号
列表推导式可使用复杂的表达式和嵌套函数
from math import pi
str = [round(pi,i) for i in range(6)]
print(str)
嵌套的列表推导式
列表解析中的第一个表达式可以是任何表达式,包括列表解析
交换行列
matrix = [
[1, 2, 3, 4],
[5, 6, 7, 8],
[9, 10, 11, 12],
]
print(matrix)
matrix = [[row[i] for row in matrix] for i in range(4)]
print(matrix)
嵌套的列表推导式是对 for 后面的内容进行求值,上例相当于
matrix = [
[1, 2, 3, 4],
[5, 6, 7, 8],
[9, 10, 11, 12],
]
print(matrix)
matrix1 = []
for i in range(4):
matrix1.append([row[i] for row in matrix])
print(matrix1)
del语句
del语句可以从列表中按给定的索引而不是值来删除一个子项。它不同于有返回值的 pop() 方法。语句 del 还可以从列表中删除切片或清空整个列表
a = [-1,1,66,333,333,1024.8]
del a[0]
print(a)
del a[2:4]
print(a)
del a[:]
print(a)
作者:追梦骚年
链接:https://www.pythonheidong.com/blog/article/9810/5af79786ad1038d574ba/
来源:python黑洞网
任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任
昵称:
评论内容:(最多支持255个字符)
---无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事,而不是让内心的烦躁、焦虑,坏掉你本来就不多的热情和定力
Copyright © 2018-2021 python黑洞网 All Rights Reserved 版权所有,并保留所有权利。 京ICP备18063182号-1
投诉与举报,广告合作请联系vgs_info@163.com或QQ3083709327
免责声明:网站文章均由用户上传,仅供读者学习交流使用,禁止用做商业用途。若文章涉及色情,反动,侵权等违法信息,请向我们举报,一经核实我们会立即删除!