Python基础知识-列表常见操作
时间:2023-02-18 02:00:00
1、sort函数、列表元素排序、默认增序排序
fruit = ['banana', 'pear', 'apple', 'peach'] print(fruit) fruit_1 = fruit.copy()#复制新列表 print(fruit_1) fruit_1.sort()#增序排序 print(fruit_1) fruit_1.sort(reverse = True)#逆序排序 print(fruit_1)
['banana', 'pear', 'apple', 'peach#原列表
['banana', 'pear', 'apple', 'peach']#拷贝
['apple', 'banana', 'peach', 'pear##增序排序
['pear', 'peach', 'banana', 'apple#逆序排序
从以上可以看出,列表是排列的ASCII码,首字母相同的情况下依次往后比较。
2、copy函数,列表元素的复制
#列表复制 vegetable = 白菜,萝卜,青菜'白菜'] print(vegetable) print(id(vegetable)) new_vege = vegetable.copy() print(id(new_vege))#copy生成的新列表的地址不同
打印输出:
白菜, '萝卜', '青菜', '芹菜', '花菜', '白菜']
3032979076296
3032978997832
由此可见copy新列表只有相同的元素,但其地址不同。
通过直接幅值生成的新列表地址相同
#列表复制 vegetable = 白菜,萝卜,青菜'白菜'] print(vegetable) print(id(vegetable)) new_vege = vegetable.copy() print(id(new_vege))#copy生成的新列表的地址不同 new_list = vegetable print(id(new_list))
打印输出
白菜, '萝卜', '青菜', '芹菜', '花菜', '白菜']
2620476683528
2620476605128
2620476683528
3.统计列表元素
vegetable = 白菜,萝卜,青菜,芹菜 print(vegetable.count('白菜')) print(vegetable.count(萝卜)
打印
2
1
4.列表元素的反向记录
#列表元素的反向记录 vegetable = 白菜,萝卜,青菜,芹菜 print(vegetable) vegetable.reverse() print(vegetable)
白菜, '萝卜', '青菜', '芹菜', '花菜', '白菜']
白菜, '花菜', '芹菜', '青菜', '萝卜', '白菜']
5、列表解析
对集合0~10除0外,求平方
只需要一行元素
Nums = [i**2 for i in range(11) if i >0] print(Nums)
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
由于:
(1)计算过程中容易出错,调试不方便;
(2)这种风格的代码比较另类,不常见。
我们可以用一般的方法。
Nums = [] for i in range(1,11): Nums.append(i**2) print(Nums)
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
6、列表长度
first_record = [18, 8, 7, 2, 3, 6, 1, 1] print(first_record) Len = len(first_record)#列表长度 print(Len)
输出列表长度:8