摘要:
pprint: python内置模块,主要提供一些函数,用于替代print()函数,美化一些python内置的数据类型的输出,比如dict, tuple, list, dataclass等等。 pprint.pp(object, stream=None, indent=1, width=80, de 阅读全文
摘要:
我们经常需要统计一块代码或一个函数运行的时间,下面总结一些计时方法,这些都来自于python内置的time模块。 time.time(): 这个函数返回一个浮点数,表示从起始时间点(1970-01-01, 00:00:00 (UTC)) 到现在的时间经过的秒数。 time.perf_counter( 阅读全文
摘要:
functools.partial(func, /, *args, **keywords): 有的翻译为偏函数,本质上是装饰器和闭包。 给目标函数传入指定的实参后,返回一个新的函数(其实是Partial对象,但仍然是callable),新函数会"冻结"一部分参数(用位置传参的参数,在调用新函数时无法 阅读全文
摘要:
类型和成员 inspect.getmembers(object[, predicate]): 返回一个对象的所有成员,返回形式是一个列表,列表中每个元素是一个二元组,分别为成员名称及成员内容。 下面以一个函数为例,演示一下都有哪些成员。 注意,__builtins__和__globals__两个特殊 阅读全文
摘要:
itertools: python内置模块,提供了很多关于迭代器相关的方法。使用我们有能力在处理大量数据时,不会大量占用内存,而是像一个管道那样从源头获取一个元素,处理一个元素。 下面是三个构造无限内容的迭代器: itertools.count(start=0, step=1): 用于构造无限长度的 阅读全文
摘要:
deque: deque是(double-ended queue)的缩写,读作"deck",底层机制是双向链表。 python内置的list的优势是足够灵活,根据索引快速访问一个元素,支持切片访问。 但list本质是一个连续的内存区域,当列表在追加元素的时候,有时候需要额外分配内存(动态分配内存有个 阅读全文
摘要:
operator: 模块提供了很多python内置运算符对应的函数。 比如加,减,乘,除,与,或,非,is, is not等等。 此模块存在的意义:有时我们在函数式编程时,经常要将一个函数传递给另一个函数。对于像加,减,乘,除这些我们当然可以自定义一个函数,或使用lambda函数来做为参数传递,但这 阅读全文
摘要:
数据字典的创建可用以下几种方式: dict() dict(**kwargs) dict(mapping, **kwargs) dict(iterable, **kwargs) 使用key-value参数创建字典。 >>> MLB_teams = dict( ... Colorado="Rockies 阅读全文
摘要:
sequence: 在python中,sequence指一些具有以下几种特性的数据类型的集合。 是可迭代对象。 可以用for...loop语句进行迭代。 有长度。 可以用len函数获得长度 可以通过整数下标访问里面的一个元素。 除了常见的list, tuple, string以外,range, by 阅读全文
摘要:
使用切片不但可以获取数据,也可以对切片位置的数据赋值可迭代类型,来插入或替换数据。 list_object[start:stop:step] = iterable 如果想在将某个位置的元素替换为新的元素,可以像下面这样使用 numbers = [1, 5, 6, 7] print(numbers[1 阅读全文