Python常用的内置函数介绍-持续更新中

本文是对在内置库中功能很独特的函数的介绍和记载
Python官方文档

Random库

import random

随机生成范围内的浮点数

result = random.uniform(1,3)
print("result: ",result) #1.1828549344931325

itertools库

import itertools

pairwise是python3.10版本中才有的,在3.10之前都是以tee为原型,该函数可以提取出一个数组中相邻一组位置的元素,该函数适用于当目标列表需要生成时使用,可节省许多迭代步骤中的代码从而大大提高效率

def pairwise(iterable):
    a, b = itertools.tee(iterable)
    next(b, None)
    return zip(a, b)
# pairwise('ABCDEFG') --> AB BC CD DE EF FG

collections库

import collections

defaultdict 是内置 dict 类的子类,用于计数可哈希对象。它是一个集合,元素像字典键(key)一样存储,它们的计数存储为值

cnt = collections.Counter()
for word in ['red', 'blue', 'red', 'green', 'blue', 'blue']:
    cnt[word] += 1
print(cnt)
# Counter({'blue': 3, 'red': 2, 'green': 1})

defaultdict 是内置 dict 类的子类,和dict不同的是当每个键第一次遇见时,它还没有在字典里面,所以自动创建该条目,即调用 default_factory 方法,返回一个空的 list,如果使用普通的dict方法则会产生KeyError的错误,代码参考如下

s = [('yellow', 1), ('blue', 2), ('yellow', 3), ('blue', 4), ('red', 1)]
d = collections.defaultdict(list) # if use dict will make a Error
for k, v in s:
    d[k].append(v)

sorted(d.items())
#[('blue', [2, 4]), ('red', [1]), ('yellow', [1, 3])]

经常使用的还是设置 default_factoryset 使 defaultdict 用于构建 set 集合

s = [('red', 1), ('blue', 2), ('red', 3), ('blue', 4), ('red', 1), ('blue', 4)]
d = collections.defaultdict(set)
for k, v in s:
    d[k].add(v)

sorted(d.items())
# [('blue', {2, 4}), ('red', {1, 3})]

当然也可以设置 default_factoryint,使 defaultdict 用于计数

s = 'mississippi'
d = collections.defaultdict(int)
for k in s:
    d[k] += 1

sorted(d.items())
# [('i', 4), ('m', 1), ('p', 2), ('s', 4)]
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值