码迷,mamicode.com
首页 > 编程语言 > 详细

Python中一些高效的数据操作

时间:2019-09-03 19:32:33      阅读:92      评论:0      收藏:0      [点我收藏+]

标签:单个字符   列表   val   str   getter   ice   使用   items   表达式   

  1. 列表统计
chars = ["a", "b", "a", "c", "a", "d"]

使用count获取单个字符出现次数

chars.count("a")

使用Counter的most_commom获取 出现次数最多的前几位

from collections import Counter
print(Counter(chars).most_common(2)
  1. 字典键值的集合操作

字典的keys()支持 并集|交集 & 差集- 等集合操作

dict_a = {"a": 1, "b": 2, "c": 3 }
dict_b = {"a": 1, "c":2, "d": 4}

dict_a.keys() & dict_b.keys()

当字典的values都是字符串(无嵌套)时,字典的items()也支持集合操作
断言字典a包含字典b

assertFalse(dict_b.items() - dict_b.items())
  1. 列表嵌套字典操作
fruits = [{"name": "apple", "price": 4},
{"name": "orange", "price": 5}, {"name": "pear", "price":6} ,{"name": "apple", "price": 5}]

排序

sorted(fruits, key=lambda x: x["price"])

可以使用itemgetter代替lambda表达式
from operator import itemgetter
sorted(fruits, itemgetter("price"))

最小

mim(fruits, key=lambda x: x["price"])

最大

max(fruits, key=lambda x: x["price"])

使用堆获取最大/最小的前几个

import heapq
heapq.nlargest(2, fruits, key=lambda x: x["price"])
heapq.nsmallest(2, fruits, key=lambda x: x["price"]

分组groupby

from itertools import goupby
groupby(fruits, key=lambda x:x["name"])

更多学习资料请加添加作者微信:lockingfree获取

Python中一些高效的数据操作

标签:单个字符   列表   val   str   getter   ice   使用   items   表达式   

原文地址:https://www.cnblogs.com/superhin/p/11454971.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!