列表的特有操作

列表是可变数据类型(具有增、删、改等操作)

列表的相关操作方法
列表方法描述说明
lst.append(x)在列表lst最后增加一个元素
lst.insert(index,x)在列表显示中第index位置增加一个元素
lst.clear()清除列表lst中所有元素
lst.pop(index)将列表lst中第index位置的元素取出,并从列表中将其删除
lst.remove(x)将列表lst中出现的第一个元素x删除
lst.reverse(x)将列表lst中的元素反转
lst.copy()拷贝列表lst中的所有元素,生成一个新的列表
from multiprocessing.util import log_to_stderr

lst = ['hello','world','python']
print('原列表:',lst,id(lst))
#增加元素的操作
lst.append('li')
print('增加元素之后的列表',lst,id(lst))

#使用insert(index,x)在指定的index位置上插入元素x
lst.insert(1,10)
print(lst)

#列表元素的删除操作
lst.remove('hello')
print('删除元素之后的列表',lst,id(lst))

#使用pop(index)根据索引将元素取出,然后再删除
print(lst.pop(1))
print(lst)

#清除列表中所有的元素clear()
# lst.clear()
# print(lst,id(lst))

#列表的反向
lst.reverse()

print(lst)

#列表的拷贝,将产生一个新的列表对象
new_lst = lst.copy()
print(lst,id(lst))
print(new_lst,id(new_lst))

#列表元素的修改操作
#根据索引修改元素
lst[1]='li'
print(lst)

二、列表排序的两种方式

1)列表对象的sort方法

lst.sort(key=None,reverse=False)#key表示排序的规则,reverse表示排序方式(默认升序)

 

lst=[4,56,3,78,40,23,89]
print('原列表:',lst)

#排序,默认是升序
lst.sort()#排序是在原列表的基础上进行的,不会产生新的列表对象
print('升序:',lst)
#降序
lst.sort(reverse=True)
print('降序:',lst)

print('-----------------英文排序--------------')
lst2=['banana','apple','Cat','Co']
print('原列表',lst2)
#升序,先排大写民,再排小写
lst2.sort()
print('升序:',lst2)
#降序,先排小写
lst2.sort(reverse=True)
print('降序:',lst2)

#忽略大小写进行比较
lst2.sort(key=str.lower)
print(lst2)

2)内置函数sorted()

sorted(iterable,key=None,reverse=False)#iterable表示的是排序的对象

lst=[4,56,3,78,40,23,89]
print('原列表:',lst)
#排序
asc_lst=sorted(lst)#产生新的对象
print('升序',asc_lst)
print('原列表:',lst)

#降序
desc_lst=sorted(lst,reverse=True)
print('降序',desc_lst)
print('原列表:',lst)


lst2=['banana','apple','Cat','Co']
print('原列表',lst2)
#忽略大小写进行排序
new_lst2=sorted(lst2,key=str.lower)
print('排序后的列表',new_lst2)

列表生成式的语法结构

lst=[expression for item in range]

lst=[expression for item in range if condion] 

import random
lst=[item for item in range (1,11)]
print(lst)
lst=[item*item for item in range (1,11)]
print(lst)

lst=[random.randint(1,100) for _ in range(10)]
print(lst)

#从列表当中去选择符合条件的元素组成新的列表
lst=[i for i in range(10) if i%2==0]
print(lst)

四、二维列表的遍历 :表格数据

for row in 二维列表:        

        for item in row:

                pass

#创建二维列表

lst=[
    ['城市','环比','同比'],
    ['北京',102,103],
    ['上海',123,234],
    ['深圳',345,221]
]
print(lst)

#遍历二维列表使用双层for循环
for row in lst:#行
    for item in row:#列
        print(item,end='\t')
    print()#换行

#列表生成式生成一个4行5列的二维列表
lst2=[[j for j in range(5)]for i in range(4)]
print(lst2)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值