08 2022 档案
摘要:简介 在实际项目中,文件读写是比较常见的操作,本文将基于python-cookbook进行讲解。 1.读写文本数据 文件的读写主要使用open函数,主要涉及到读写的文件路径、对文件的操作、操作文件的编码、不同平台的换行符等,常见写法如下: def read_file(file_path): with
阅读全文
摘要:简介 个人认为,迭代器和生成器是python中的比较核心的一个知识点,它几乎在python代码中的方方面面,例如常用的range()、一些内置函数,例如map返回的都是迭代器对象。 迭代器的官方说法 用来表示一连串数据流的对象。重复调用迭代器的 next() 方法(或将其传给内置函数 next())
阅读全文
摘要:简介 堆,又称优先队列,是一个完全二叉树,它的每个父节点的值都只会小于或等于所有孩子节点(的值)。 它使用了数组来实现:从零开始计数,对于所有的 k ,都有 heap[k] <= heap[2k+1] 和 heap[k] <= heap[2k+2]。 为了便于比较,不存在的元素被认为是无限大。 堆最
阅读全文
摘要:1.关于序列转为固定变量的问题 假设存在如下一个序列,需要将对应的值赋值给相应的变量a, b, c, d sep = [1, 2, 5, 8] 我们可以将序列中的元素分别对应变量(变量个数与序列个数一致)即可。 a, b, c, d = sep print(a) print(b) print(c)
阅读全文
摘要:简介 在进行python的进阶学习中,发现了哈希表,对此有些许困惑,因此本文将进行记录。 什么是哈希表? 哈希表,又名散列表,是键值对的无序集合,其键是唯一的,其数据元素的地址或索引值由散列函数生成。 这使得访问数据的速度更快,因为索引值是数据值的关键字。 换句话说,哈希表存储键值对,但键是通过哈希
阅读全文
摘要:简介 由于在开发中对于多重继承中的super方法不是很熟悉,本文将介绍super的使用场景,及super是根据什么去查找方法。 super([type[, object-or-type]]) type:需要委托的父类或者兄弟类,就是调用哪个类,不写的话默认是父类 object-or-type:确定用
阅读全文
摘要:collections.Counter([iterable-or-mapping] Counter是用来对对象进行计数,主要是针对于重复元素的个数的计数,详细如下: from collections import Counter c = Counter('gallahad') print(c) c
阅读全文
摘要:functools.partial(func, /, *args, **keywords) 偏函数, 返回新的部分对象(函数),类似于传入了默认参数一样 from functools import partial def run(m, n): return m + n run2 = partial(
阅读全文
摘要:简介 ⾃省(introspection),在计算机编程领域⾥,是指在运⾏时来判断⼀个对象的类型的能⼒。 它是Python的强项之⼀。Python中所有⼀切都是⼀个对象,⽽且我们可以仔细勘察那些对 象。Python还包含了许多内置函数和模块来帮助我们。 dir dir是python进行自省的非常重要的
阅读全文
摘要:文件操作 1.读取一个大文件,例如文件大小为10g,且内存为4g,该怎么读取文件内容 2.编写一个函数,这个函数接收文件夹的名称作为输入参数 返回该文件夹中文件的路径 以及其包含文件夹中文件的路径 使用os.listdir()返回文件名称的列表,不是全路径 from os import listdi
阅读全文
摘要:简介 在众多设计模式中。对于同一个类,始终提供一个对象,保证提供的对象只有一个,适用于需要频繁进行初始化操作 例如单个数据库的频繁读写操作、多线程操作同一个文件时也需要保证是同一个实例。 1、单例类只能有一个实例。 2、单例类必须自己创建自己的唯一实例。 3、单例类必须给所有其他对象提供这一实例。
阅读全文