python 列表的那些骚操作
a=[1,2,3]
b=['小柯','小韩','小宝','小柯','小宝','小宝']
c=[['i','love','you'],[1,2,3],[7089143]]
#1、列表的反转
print(a[::-1])
#2、还有这种???
print(a[True])
#2、有一个很有意思的用法,定义包含n个常量的列表
n=4
l=[0]*n
print(l)
#3、优雅的列表推导式
new_list=[i*2 for i in a]
new_list1=[i for i in b if '宝' not in i]
print(new_list)
print(new_list1)
#5、字符串列表元素的拼接
print(''.join(b))
print('是'.join(b))
#列表元素去重
print(set(b))#利用集合去重,得到的结果集合不一定是有序的,这里要注意一下
#来个有顺序的
l_1= []
for i in b:
if i not in l_1:
l_1.append(i)
print(l_1)
#统计元素在列表的出现次数
print(b.count('小宝'))
#统计列表里每个元素出现的次数
dic={}
for key in b:
dic[key]=dic.get(key,0)+1
print(dic)
#再看看使用collections模块下的Counter类
from collections import Counter
print(Counter(b))
#利用pandas模块下的value_counts方法也行
import pandas as pd
print(pd.value_counts(b))
#嵌套列表的展开
print([item for i in c for item in i])
print(sum([['i','love','you'],[1,2,3],[7089143]], []))
#对于复杂嵌套的列表上述两种方法就无法展开了
list_2=[1,[2],[[3]],[[4,[5],6]],7,8,[9]]
#我们来看这列表该怎么展开呢
#这里递归是一个方法
def flat(list_2):
res = []
for i in list_2:
if isinstance(i, list):#判断i 的值是不是列表
res.extend(flat(i))
else:
res.append(i)
return res
print(flat(list_2))
#还有更直接更简单的是时候上大招了
print(list(map(int,(str(list_2).replace('[','').replace(']','')).split(','))))

【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY