随笔分类 -  Python

摘要:一、魔法函数 1、在类中实现了__getitem__方法,就可以对类Company的实例进行切片,遍历的操作 >for循环调用__iter__方法,如果没有就调用__getitem__方法,其中的参数item是Python解释器会帮我们填进去的(从0开始),直到报错了for循环才停止。 2、用len 阅读全文
posted @ 2019-02-24 22:38 心灵蚂蚁 阅读(793) 评论(0) 推荐(0)
摘要:异步就是回调 异步 = 非阻塞+循环 select只能完成IO多路复用,不能完成异步 IO多路复用 >监听多个socket对象,这个过程是同步的 利用其特性可以开发异步模块 异步IO:非阻塞的socket + IO多路复用 自定义异步框架 阅读全文
posted @ 2019-02-04 01:37 心灵蚂蚁 阅读(357) 评论(0) 推荐(0)
摘要:一、isinstance(obj,cls)和issubclass(sub,super) isinstance(obj,cls)检查是否obj是否是类 cls 的对象 issubclass(sub, super)检查sub类是否是 super 类的派生类 二、反射 1、什么是反射 反射的概念是由Smi 阅读全文
posted @ 2019-01-24 02:36 心灵蚂蚁 阅读(266) 评论(0) 推荐(0)
摘要:一、什么是面向过程、面向对象的程序设计 面向过程的程序设计:核心是过程二字,过程指的是解决问题的步骤,即先干什么再干什么......面向过程的设计就好比精心设计好一条流水线,是一种机械式的思维方式。 优点是:复杂度的问题流程化,进而简单化(一个复杂的问题,分成一个个小的步骤去实现,实现小的步骤将会非 阅读全文
posted @ 2019-01-24 01:25 心灵蚂蚁 阅读(334) 评论(0) 推荐(0)
摘要:一、继承 1、什么是继承 继承是一种创建新类的方式,新建的类可以继承一个或多个父类(python支持多继承),父类又可称为基类或超类,新建的类称为派生类或子类。 子类会“”遗传”父类的属性,从而解决代码重用问题(比如练习7中Garen与Riven类有很多冗余的代码) 2、python中类的继承分为: 阅读全文
posted @ 2019-01-12 01:41 心灵蚂蚁 阅读(727) 评论(4) 推荐(1)
摘要:路径问题 有项目文件如下,如果 test.py 作为执行文件,在 test.py 里面导入 test1.py 是不行的"import test1.py",因为 test.py 作为执行文件后,Python解释器会从 test.py的当前路径开始寻找(mypage包下),而不会进入包 mypage2, 阅读全文
posted @ 2019-01-04 23:03 心灵蚂蚁 阅读(180) 评论(0) 推荐(0)
摘要:一、高阶函数 二、函数嵌套 三、装饰器(装饰器=高阶函数+函数嵌套+闭包) 普通装饰器 带参数装饰器 当被修饰函数有返回值的情况 装饰器带参数的情况(装饰函数外面在套一层函数还接收变量) 四、迭代器和生成器 为何要有迭代器?什么是可迭代对象?什么是迭代器对象? #1、为何要有迭代器? 对于序列类型: 阅读全文
posted @ 2019-01-03 02:03 心灵蚂蚁 阅读(242) 评论(0) 推荐(0)
摘要:abs() 获取绝对值 all() 参数为可迭代对象.如果迭代对象的所有元素都为真,那么返回True,否则返回False.注意,迭代对象为空时,返回True any() 参数为可迭代对象,只要任一元素为真,则返回真。参数为空时返回True sum() 求和 bin() 将参数转化为二进制 bool( 阅读全文
posted @ 2019-01-01 02:10 心灵蚂蚁 阅读(214) 评论(0) 推荐(0)
摘要:多继承以及MRO顺序 1. 单独调用父类的方法 运行结果: 2. 多继承中super调用有所父类的被重写的方法 运行结果: 注意: 调用父类的三种方法:1、类名.xxx(self, 形参);2、super().xxx(形参);3、super(类名, self).xxx(形参) 区别: 在多继承中,如 阅读全文
posted @ 2018-12-05 20:39 心灵蚂蚁 阅读(266) 评论(0) 推荐(0)
摘要:GIL面试题如下 描述Python GIL的概念, 以及它对python多线程的影响?编写一个多线程抓取网页的程序,并阐明多线程抓取程序是否可比单线程性能有提升,并解释原因。 Guido的声明:http://www.artima.com/forums/flat.jsp?forum=106&threa 阅读全文
posted @ 2018-12-01 19:23 心灵蚂蚁 阅读(316) 评论(0) 推荐(0)
摘要:单例 目标 单例设计模式 __new__ 方法 Python 中的单例 01. 单例设计模式 设计模式 设计模式 是 前人工作的总结和提炼,通常,被人们广泛流传的设计模式都是针对 某一特定问题 的成熟的解决方案 使用 设计模式 是为了可重用代码、让代码更容易被他人理解、保证代码可靠性 单例设计模式 阅读全文
posted @ 2018-11-30 14:50 心灵蚂蚁 阅读(253) 评论(0) 推荐(0)
摘要:类是对一群具有相同 特征或者 行为的事物的一个统称,是抽象的,不能直接使用 1)特征 被称为 属性(变量) 2)行为 被称为 方法(函数) 案例改造 —— 给对象增加属性 在 Python 中,要 给对象设置属性,非常的容易,但是不推荐使用只需要在 类的外部的代码 中直接通过 . 设置一个属性即可 阅读全文
posted @ 2018-11-29 21:47 心灵蚂蚁 阅读(223) 评论(0) 推荐(0)
摘要:有个关于正则的注意点,不要随便加空格.... 下面写的关于匹配邮箱的正则,原本很简单的一个题,被我在"{4,20}"之间加个空格就不行了。注意注意.... 分组的用法,使标签前后保持一致 另一种方法:起别名 “?”的作用是匹配0次或者1次 提取区号和电话号码 sub可以传递函数 三次握手(相当于调用 阅读全文
posted @ 2018-11-29 00:36 心灵蚂蚁 阅读(319) 评论(0) 推荐(0)
摘要:UDP介绍 每个Ip地址包括两部分:网络地址和主机地址 知名端口号:0 - 1023。不能随便用,有特殊用途。 1024到65535,随便用。 udp实现发送数据 udp实现接收数据 单工:类似于收音机 半双工:类似于对讲机 全双工:类似于手机 socket属于全双工 TCP介绍 udp和tcp的区 阅读全文
posted @ 2018-11-25 20:33 心灵蚂蚁 阅读(202) 评论(0) 推荐(0)
摘要:什么是进程? 程序在没运行起来之前是死的,程序运行起来后就是进程,进程跟程序之间的区别就是进程拥有资源,例如登陆QQ之后,QQ可以调用声卡、摄像头等。 两个进程之间的通信,利用队列Queue,放到内存里,一个写,一个读。缺点就是队列只能在同一个程序或者电脑中运行,要在多台电脑之间进行,用到缓存red 阅读全文
posted @ 2018-11-24 19:49 心灵蚂蚁 阅读(378) 评论(0) 推荐(0)
摘要:线程 并行:真的多任务 并发:假的多任务(任务数多于CPU内核) 线程创建后谁先执行不确定,但可以通过延时来决定。 子线程先结束,最后才是主线程,代表整个程序结束。 当然前提是指向的数值可不可变,如果是数字、字符、元组,就要加global,如果是列表这些可变的,则视情况而定。 线程可以传参数 多线程 阅读全文
posted @ 2018-11-23 11:23 心灵蚂蚁 阅读(136) 评论(0) 推荐(0)
摘要:1、二、八、十六进制转十进制:int('10', base=2)、int('10', base=8)、int('10', base=16); 2、八、十、十六进制转二进制:bin(0o+xxx)、bin(xxx)、bin(0x+xxx); 3、二、十、十六进制转八进制:oct(0b+xxx)、oct 阅读全文
posted @ 2018-11-16 21:29 心灵蚂蚁 阅读(819) 评论(0) 推荐(0)
摘要:这两个是python中的可变参数。*args表示任何多个无名参数,它是一个tuple(元祖);**kwargs表示关键字参数,它是一个dict(字典)。并且同时使用*args和**kwargs时,必须*args参数列要在**kwargs前。看下面例子: Python super()函数用法 supe 阅读全文
posted @ 2018-08-16 14:06 心灵蚂蚁 阅读(1632) 评论(0) 推荐(1)