python中好用的函数
-
去冗余,可替代for循环
使用元组排序
list1 = [(‘a’,‘b’),(‘a’,‘b’),(‘b’,‘a’)
list2 = [tuple(sorted(i)) for i in list1]
使用数据框去冗余
import pandas as pd
data = pd.DataFrame(list2)
t = data.drop_duplicates()
使用矩阵模块存入文件
import numpy as np
np.savetxt(‘test.txt’,t,fmt=’%s’,delimiter=’\t’) -
如何使字典一个键对应多个值
使用字典嵌套列表,使用函数dict1.setdefault(n2,[]).append(n1) -
两个列表的元素组合
import itertools
c = list(itertools.product(n1,n2)) -
双层for循环(列表嵌套列表,如何找出所有元素)如何用一行代码写出
list2 = [j for i in list1 for j in i] -
提取两个文件中相同的内容
for i in list1:
if i in list2:
print(’!’)
优化!用一行代码写出!
c = [i for i in list1 if i in list list2]
当数据量达百万级,上述代码运行速度减慢!可能是"in"这一判断是在列表一个查找,比较消耗时间,但是在同样数据量的字典中使用"in"查找速度依然很快!这可能就是字典和列表的区别吧!
用”&“可以获取两个集合的相同元素,注意是集合!
把列表变为集合:
list1 = set(list1)
list2 = set(list2)
list3 = list1 & list2
若需要变为列表:list3 = list(list3) -
判断字符串,列表,字典,集合,元组是否为空,用not 来判断
if not str,list,dic,set,tuple
- 处理以逗号或分号或任意符号分割开的句子
str[:-1].split(’,’)