python
文章平均质量分 52
小菜洋子
1873176818@qq.com
展开
-
Python中的变长对象
本系列文章都是基于陈儒的Python源码剖析一书。typedef struct { PyObject_VAR_HEAD} PyVarObject;#define PyObject_VAR_HEAD \ PyObject_HEAD \ Py_ssize_t ob_size; /* Number of items in variable part */基于我们在Python对象基石P原创 2022-05-13 23:33:10 · 208 阅读 · 0 评论 -
Python 对象的基石 PyObject
本系列文章都是基于陈儒的Python源码剖析一书。打开object.h 文件typedef struct _object { PyObject_HEAD} PyObject;上述代码定义了一个数据类型PyObject. 可以发现PyObject中就是PyObject_HEAD。#define PyObject_HEAD \ _PyObject_HEAD_EXTRA \ Py_ssi原创 2022-05-13 23:04:32 · 560 阅读 · 0 评论 -
Python 中默认参数的特性
在Python中默认参数只会别求值一遍,然后记录下这个值,以后每次调用这个方法或者是函数的时候都会传递这个求值一遍的默认值,如果这个默认参数的值是一个不可变的值,没什么问题,但是当这个默认参数的值是一个可变的值,就会触发一些意想不到的Bug.代码如下:class Player(object): def __init__(self,name,items=[]): self.name = name self.items = itemsplayer_a = P原创 2022-05-02 02:44:12 · 683 阅读 · 0 评论 -
Python中的super
1 由于python多继承的所以python需要一个确定到底是调用那个继承类方法的机制。super并不是和java中一样是一个关键字,super在python中是一个类。2 mro .python中每个类都有一个mor方法,这个方法会返回当前类的继承循序类的一个列表。在python2.3之后mr0使用的是C3算法。如果一个类的继承关系不满足C3算法,那么这个类的继承关系有误。class A(object): passclass B(A): passclass C(A,原创 2022-04-05 17:25:55 · 848 阅读 · 0 评论 -
Centos6.5 安装pyenv
使用pyenv管理python多版本1下载依赖包yum install readline readline-devel readline-staticsudo yum install openssl openssl-devel openssl-staticsudo yum install sqlite-develsudo yum install bzip2-devel bzip2-libs2自动安...原创 2018-04-19 19:40:30 · 575 阅读 · 0 评论 -
celery初探
Celery 是一个简单、灵活且可靠的,处理大量消息的分布式系统,并且提供维护这样一个系统的必需工具。它是一个专注于实时处理的任务队列,同时也支持任务调度。 Celery 有广泛、多样的用户与贡献者社区,可以通过IRC 或是 邮件列表 加入到 Celery 的开发和维护中。 Celery 是开源的,使用 BSD 许可证 授权。 下面就以两个 Celery 非常常用的例子:异步任务执...原创 2018-07-10 13:01:36 · 142 阅读 · 0 评论 -
IO模型
I/O类型:同步和异步:关注的是消息通知的机制同步:调用发出之后不会立即返回,但是一旦返回,则返回调用的结果。异步:调用发出之后,被调用方立即返回结果。但是并非返回最终结果;被调用方通过状态,通知机制 等通知调用者,或者通过回调函数来处理结果阻塞和非阻塞:关注的是调用者等待被调用者结果时的状态阻塞:调用结果返回之前,调用者一直被挂起,调用者只有在得到返回结果之后才可以继续工作非阻塞:调用结果返回之...原创 2018-07-13 02:20:43 · 89 阅读 · 0 评论 -
GC的一些基本概念
1 对象 对象在不同场合具有不同的意义。在GC领域中对象代表的是应用程序利用的数据集合,同时也是GC的基本单位,一般的对象都是由头(header)和域(fild)组成的。(基于我所使用的两种语言java和python都是这样的)2 对象头(header)对象头一般存储着对象的元数据(大致可以分为类型信息和GC信息在Cpython中python所有的对象都是使用一个PyObj的指针去引用的。这个...原创 2019-05-01 20:56:01 · 401 阅读 · 0 评论