python中列表List中常用的函数和方法
列表List中常用的函数和方法
函数
range()
可创建一个整数列表,一般用在 for 循环中。
返回:返回的是一个可迭代对象(类型是对象),而不是列表类型, 所以打印的时候不会打印列表,
range(start, stop,[step])
参数说明:
- start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);
- top: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5;
- step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)
big_num =[]
for num in range(1,11):
num = num**2
big_num.append(num)
print(big_num)
返回
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
这个例子可以用列表解析进行简化
big_num =[num**2 for num in range(1,11)]
print(big_num)
返回 同
注意:range()并不直接创建一个数字列表,需要用函数list()将range()的结果转换为列表。
list()
ist() 函数用于将元组转换为列表。
注:元组与列表是非常类似的,区别在于元组的元素值不能修改的、是不可变的,元组是放在括号中,列表是放于方括号中。一般来说,不可变的列表叫元组。元组可以像列表一样通过索引来访问。
list( tuple )
参数说明:
- tuple -- 要转换为列表的元组。
返回:列表
num = list(range(5))
print(num)
返回
[0, 1, 2, 3, 4]
num = list('word')
print(num)
返回
['w', 'o', 'r', 'd']
min() max() sum()
对数字列表执行简单的统计计算
括号内是列表
big_num =[]
for num in range(1,1000001):
big_num.append(num)
print(max(big_num))
print(min(big_num))
print(sum(big_num))
返回
1000000
1
500000500000
len()
统计列表中元素的个数,括号内是列表或元组
food =('a','b','c','d','e')
print(len(food))
或
food =['a','b','c','d','e']
print(len(food))
输出
5
方法
.count()
统计列表中某元素出现的次数,括号内是指定的某个元素
num = [1,2,3,3]
print(num.count(3))
输出
2
.append()
.append(obj)
往列表的最后一个位置插入操作,括号内是插入的元素
返回:无,会修改列表。
num = ["a","b","c","school"]
num.append('love')
print(num)
.extend() 或 +相加
可以”+“号 来实现列表的相加。
num_1 = ["a","b","c"]
num_2 = ['teacher',"school"]
num = num_1 + num_2
print(num)
输出
['a', 'b', 'c', 'teacher', 'school']
列表A.extend(列表B)链接两个列表,将列表B接到A的最后边,形成一个新的列表A,A列表已经变化
num_1 = ["a","b","c"]
num_2 = ['teacher',"school"]
num_1.extend(num_2)
num = num_1[:]
print(num)
输出
['a', 'b', 'c', 'teacher', 'school']
注意 两个列表谨慎用 = 连接,一旦连接,两个列表作一个看。上边
num = num_1[:]
是把新的列表A复制一个副本给列表num。
.inset()
list.insert(index, obj),该方法用于将指定对象插入裂变的指定位置。
参数说明
- index 索引
- obj 对象,该对象可以是一个数字或字符串,也可以是一个列表的某一个索引值。但是,OBJ如果是列表,只能是列表[2],如果把一段切片如列表[0,2],那么结果是把这一段切片带方括号插进指定位置了。
返回:无
num_1 = ['a', 'b', 'c', 'teacher', 'school']
num_1.insert(2,567)
print(num_1)
num_2 = ['i','love','U']
num_1.insert(2,num_2[0])
print(num_1)
输出
['a', 'b', 567, 'c', 'teacher', 'school']
['a', 'b', 'i', 567, 'c', 'teacher', 'school']
.pop()
.pop(index)
弹出列表中指定索引的元素并返回删除的元素,原列表将失去该元素。不指明索引,默认弹出最后一位。
num = ['a', 'b', 'c', 'teacher', 'school']
poped_num = num.pop()
print(num)
print(poped_num)
输出
['a', 'b', 'c', 'teacher']
school
.remove()
list.remove(obj),移除列表中符合某个值得第一个匹配项
返回:无。没有返回值就不存在赋值。
.sort()
list.sort(cmp=None, key=None, reverse=False),默认升序
参数
cmp
key
reverse:翻转,reverse = True 降序, reverse = False升序(默认)
list = [(2, 2), (3, 4), (4, 1), (1, 3)]
# 获取列表的第二个元素
def takeSecond(elem):
return elem[1]
# 指定第二个元素排序
list.sort(key=takeSecond)
print(list)
输出
[(4, 1), (2, 2), (1, 3), (3, 4)]
list = ['a','bb','ccc']
list.sort(key = len)
print(list)
输出
['a', 'bb', 'ccc']
list = ['a','bb','ccc']
list.sort(key = len, reverse=True)
print(list)
输出
['ccc', 'bb', 'a']
2021年3月17日16:18:40