python相关
文章平均质量分 84
python相关的原理知识。
不忘初心_悟空
在职猿,北航路。
莫问前路凶吉,但求落幕无悔。
展开
-
魔法函数__dict__和__getattr__的妙用
__dict____dict__是用来存储对象属性的一个字典,其键为属性名,值为属性的值。既然__dict__是个字典那么我们就可以用字典的属性了。我们通过使用dir()属性来看看__dict__都有哪些属性。['__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__',转载 2021-10-01 16:29:08 · 260 阅读 · 0 评论 -
python定时任务APScheduler
摘要 本文介绍APScheduler最基本的用法“定时几秒后启动job”,解释其中两种调度器BackgroundScheduler和BlockingScheduler的区别,说明了如何做到“让job在start()后就开始运行”,详述“job执行时间大于定时调度时间”这种特殊情况的...转载 2021-10-01 16:03:36 · 795 阅读 · 1 评论 -
python函数式编程(map、filter、reduce、zip、sorted)
[toc]map其中,function 参数表示要传入一个函数,其可以是内置函数、自定义函数或者 lambda 匿名函数;iterable 表示一个或多个可迭代对象,可以是列表、字符串等。map() 函数的功能是对可迭代对象中的每个元素,都调用指定的函数,并返回一个 map 对象。listDemo = [1, 2, 3, 4, 5]new_list = map(lambda x: x * 2, listDemo)print(list(new_list))filterfilter() 函数的功原创 2020-09-23 19:01:01 · 121 阅读 · 0 评论 -
Python推导式(列表推导式、元组推导式、字典推导式和集合推导式)
列表表达式a_range = range(10)# 对a_range执行for表达式a_list = [x * x for x in a_range]# a_list集合包含10个元素print(a_list)# 嵌套生成e_list = [[x, y, z] for x in range(5) for y in range(4) for z in range(6)]# e_list列表包含120个元素print(e_list)元祖表达式a = (x for x in range(1原创 2020-09-23 19:06:53 · 637 阅读 · 0 评论 -
python 进程(池)、线程(池)
进程、多进程、进程池进程总概述进程from multiprocessing import Processimport os# 子进程要执行的代码def run_proc(name): print('Run child process %s (%s)...' % (name, os.getpid()))if __name__=='__main__': print('Parent process %s.' % os.getpid(原创 2020-09-24 19:15:40 · 267 阅读 · 0 评论 -
python协程(yield、asyncio标准库、gevent第三方)、异步的实现
引言同步:不同程序单元为了完成某个任务,在执行过程中需靠某种通信方式以协调一致,称这些程序单元是同步执行的。例如购物系统中更新商品库存,需要用“行锁”作为通信信号,让不同的更新请求强制排队顺序执行,那更新库存的操作是同步的。简言之,同步意味着有序。阻塞:程序未得到所需计算资源时被挂起的状态。程序在等待某个操作完成期间,自身无法继续干别的事情,则称该程序在该操作上是阻塞的。常见的阻塞形式有:网络I/O阻塞、磁盘I/O阻塞、用户输入阻塞等。阻塞状态下的性能提升引入多进程:在一个程序内,依次执行原创 2020-09-25 18:42:41 · 986 阅读 · 0 评论 -
python的多种魔术方法
[toc]定制类和魔法方法newstr , repritergetitem , setitem , delitemgetattr , setattr , delattrcallnew在 Python 中,当我们创建一个类的实例时,类会先调用 new(cls[, ...]) 来创建实例,然后 init 方法再对该实例(self)进行初始化。关于 new 和 init 有几点需要注意:new 是在 init 之前被调用的;new 是类方法,init 是实例方法;重载 new 方法,原创 2020-09-21 18:05:58 · 113 阅读 · 0 评论 -
Python数据结构list、set、dict、tuple底层实现
dict是借助哈希表(散列)实现的。借助哈希函数寻找位置:hash(k)=k mod m处理冲突借用的是开放寻址法解决冲突。时间复杂度控制在O(1)上。原创 2020-09-17 19:22:41 · 1066 阅读 · 0 评论