python高级编程
紫色的梅花
这个作者很懒,什么都没留下…
展开
-
Python 中 一切皆对象
1.一切皆对象: 动态语言与静态语言的区别: python面向对象更加彻底。 python中一切皆对象。函数,类,异常等等都是对象。 可以动态修改python类中的属性。 类和函数属于python的一等公民。即: ...原创 2019-08-23 21:18:43 · 303 阅读 · 0 评论 -
python socket编程
弄懂 HTTP、Socket、TCP概念其实在传输层和应用层当中还有表示层和会话层这2个层。7层网络模型。socket协议不是属于计算机网络协议。使得应用层可以直接和传输层进行沟通。独立于这个模型之外,可以脱离于应用层,可以与传输层及以下的层建立沟通。socket的client 和server 实现通信上图中左侧是server端,右侧是client端。下面是使用socket_ser...原创 2019-09-07 21:07:53 · 103 阅读 · 0 评论 -
python迭代器和生成器
python迭代协议1.迭代协议: 可迭代类型 Iterable 迭代器iterator2.什么是迭代器:迭代器是用来访问集合内元素的一种方式,一般用来遍历数据迭代器和下标的访问方式不一样,迭代器是不能返回的,迭代器提供了一种惰性数据的方式[] list , __ iter __#from _collections_abc import Iterator,Iterablefro...原创 2019-09-07 17:37:16 · 214 阅读 · 0 评论 -
python元类编程
property动态属性动态属性的设置和动态属性的获取from datetime import date,datetimeclass User: def __init__(self,name,birthday): self.name=name self.birthday=birthday self._age=0 #user= ...原创 2019-09-07 00:04:29 · 293 阅读 · 0 评论 -
python对象的引用和可变性、和垃圾回收
python变量#python和java中的变量本质不一样,python的变量实质是一个指针 int str,#便利贴a=1a=“abc”#1.a贴在对象1上#2.先生成对象,然后将变量指向对象。a=[1,2,3]b=aprint(id(a),id(b))print(a is b)对象引用参数传递经典错误def add(a,b): a+=b return...原创 2019-09-06 12:43:42 · 124 阅读 · 0 评论 -
深入 Dict set一些代码的例子
dict常见方法mapping协议from collections.abc import Mapping,MutableMapping#dict属于Mapping类型dict1={}print(isinstance(dict1,MutableMapping))print(isinstance(dict1,Mapping))a={"xiaopang1":{"A":1,"B":2,...原创 2019-09-04 22:58:57 · 226 阅读 · 0 评论 -
python自定义序列类型
序列类型的分类可以按照两个维度对序列进行分类1.根据数据的维度进行区分 1.容器序列:list 、tuple 、 deque &n...原创 2019-09-02 18:24:11 · 453 阅读 · 0 评论 -
深入类和对象
1.鸭子类型和多态当你看到一只鸟走起来像鸭子、游泳起来像鸭子、叫起来也像鸭子,那么这只鸟就可以被称为鸭子。########################伪代码##############################class Animal:def say(self):print(“i am a animal”)class Cat (Animal):def say(self)...原创 2019-08-25 14:33:08 · 187 阅读 · 0 评论 -
魔法函数
1.魔法函数以双下划线开头双下划线结尾。有python提供的。可以写到任何自定义的类中,不需用去手动调用,Python解释器内部会自己调用魔法函数。举个例子:2.python的数据模型以及数据模型对python的影响实际上魔法函数是python本身数据模型的一个概念,如当我们在类中实现 __ getitem __()的时候,可以实现对类的实例化对象的直接遍历。所以魔法函数实际上会影响P...原创 2019-08-24 13:24:32 · 1695 阅读 · 0 评论 -
多线程、多进程和线程池编程
GIL (global interpreter lock)全局解释器锁基于cpython的介绍:python中的一个线程是对应于c语言中的一个线程,python在早期的时候为了简单,会在解释器上加一把非常大的锁,允许我们同一时刻只有一个线程运行在一个cpu上执行字节码。在某种程度上保证了我们的线程是安全的。它无法将多个线程映射到多个cpu上执行,使得我们无法利用多核优势。gil使得同一时刻只...原创 2019-09-09 14:16:21 · 227 阅读 · 0 评论