随笔分类 -  python

摘要:这里的内容仅仅是本人阅读《Python高性能编程》后总结的一些知识,用于自己更好的了解Python机制。本人现在并不从事计算密集型工作:人工智能、数据分析等。仅仅只是出于好奇而去阅读这本书。很多人因为Python不能同时使用多颗CPU(全局解释器锁GIL),而觉得它不能实现高性能。书中有很多介绍避开 阅读全文
posted @ 2018-05-27 23:31 尚墨 阅读(794) 评论(0) 推荐(0) 编辑
摘要:使用队列的目的: 解耦,使程序之间实现松耦合;提高处理效率 FIFO = 先进先出,first in first out LIFO = 后入先出,last in first out 生产者消费者模型 使用方式 1 import queue 2 3 #创建队列对象,设置队列大小maxsize=10 4 阅读全文
posted @ 2018-05-09 20:30 尚墨 阅读(204) 评论(0) 推荐(0) 编辑
摘要:进程:是资源的集合,一个进程至少包含一个线程。所有程序的进程由系统的父进程拉起。如linux中所有进程由PID:1的进程创建 进程间数据交互: 这里需要用到进程包的queue,由于多个进程无法共享数据,所以没有办法使用import queue 1 from multiprocessing impor 阅读全文
posted @ 2018-05-09 20:28 尚墨 阅读(490) 评论(0) 推荐(0) 编辑
摘要:python多线程使用场景:IO操作,不适合CPU密集操作型任务 1、多个线程内存共享 2、线程同时修改同一份数据需要加锁,mutex互斥锁 3、递归锁:多把锁,锁中有锁 4、python多线程,同一时间只有颗CPU在执行。 启动线程: 1 import threading 2 def run(na 阅读全文
posted @ 2018-05-07 11:56 尚墨 阅读(959) 评论(0) 推荐(0) 编辑
摘要:曾经,博主的房东养了只金毛叫奶茶,今天就拿它当议题好了。 博主写本文时正在被广州的蚊子围攻。 #反射练习 class animal(object): def __init__(self,name,fool): self.name = name self.fool = fool def dog(sel 阅读全文
posted @ 2018-04-05 22:36 尚墨 阅读(2472) 评论(1) 推荐(1) 编辑
摘要:这里只有干巴巴的货物 底层实现,我希望您理解内存地址,通多DeBug调试可以查看编译器如何实现寻址操作。可以帮助你理解为什么是这样的 1 #python class继承,多继承 2 3 class mail(object): #多继承需要采用class mail(object)新式类定义方式实现 4 阅读全文
posted @ 2018-03-21 23:02 尚墨 阅读(2596) 评论(0) 推荐(0) 编辑
摘要:注:这里只描述使用方法,具体类的概念长篇大论就不要为难我这个懒人了。 总之一句话编程语言只是一个工具,会用就行,好用就行。打破砂锅问到底,我觉得有必要研究一下C,汇编,电子链路等。 1 class cltdy: #定义类,并起一个名字 2 n = 1000 #类属性,类内的变量 3 def __in 阅读全文
posted @ 2018-03-20 22:57 尚墨 阅读(21907) 评论(0) 推荐(1) 编辑
摘要:可迭代对象: 可以直接作用于for巡皇的对象统称为可迭代对象:Iterable 1 #判断一个对象是否是Iterable对象,首先需要导入collections中的Iterable模块 2 >>from collections import Iterable 3 >>isinstance([],It 阅读全文
posted @ 2018-02-28 14:26 尚墨 阅读(284) 评论(0) 推荐(0) 编辑
摘要:定义: 本质是函数(装饰其他函数),是为其他函数添加附加功能 原则: 不能修改被装饰函数的源代码 不能修改被装饰函数的调用方式 实现装饰器知识储备: 函数及“变量” 高阶函数 把一个函数名当做实参传给另外一个函数(不修改被装饰函数,为其添加功能) 返回值中包含函数名(不修改函数调用方式)用retur 阅读全文
posted @ 2018-02-26 00:28 尚墨 阅读(297) 评论(0) 推荐(0) 编辑
摘要:位置参数 位置参数需与形参一一对应 def test(a,b) #a,b就是位置参数 print(a) print(b) test(1,2) 关键字参数 与形参顺序无关 def test(x,y) print(x,y) test(x=2,y=3) 位置参数必须在关键字参数之前 **kwargs:把N 阅读全文
posted @ 2018-02-24 22:25 尚墨 阅读(268) 评论(0) 推荐(0) 编辑
摘要:a = [1,2,3,4,1,1,1,1] #删除操作 删除元素1 a.remove(1) 删除第二个元素 del a[1] 默认删除最后一个,给脚标就会删除指定脚标元素 pop() 方法 a.pop() #搜索列表中的元素 a.index("sober") #统计元素出现次数 a.count(1) 阅读全文
posted @ 2018-01-16 22:45 尚墨 阅读(299) 评论(2) 推荐(1) 编辑

点击右上角即可分享
微信分享提示
主题色彩