python学习指南

Python常用且功能独特的内置函数--持续更新中

2022-06-19  本文已影响0人  生信工具箱

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

Random库

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

itertools库

import itertools
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
cnt = collections.Counter()
for word in ['red', 'blue', 'red', 'green', 'blue', 'blue']:
    cnt[word] += 1
print(cnt)
# Counter({'blue': 3, 'red': 2, 'green': 1})
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)]
上一篇下一篇

猜你喜欢

热点阅读