MyCopyistSpace

Python 内核源码阅读(二) -- 对象的机制的基石-PyObject

Python 内核源码阅读(二) -- 对象的机制的基石-PyObject整体架构Python 整体架构可分为3个部分,内建模块, Python 内核,Python 虚拟机.内建模块就诸如 import os 时,这个 os 就是 Python 的内建模块.Python 内核就包括定义Python 的对象/类型系统,处理垃圾回收机制等,虚拟机就是解释器,对Python 代码进行词法语法分析等...

admin@copie.cn 2018 年 04 月 27 日 暂无评论

Python 内核源码阅读(一): 了解 Python 源码的结构与编译

Python 内核源码阅读(一): 了解 Python 源码的结构与编译自述现在 <<Python 源码剖析>> 已经绝版了 我淘宝20块买的一本盗版的:) 刚开始过了大部分,到最后几章还是理解不动了.没有办法放在那里去写了一个 基于 Flask 的一个 Blog 系统, 但是审美有点问题所以界面比较难看. 由于大部分功能都写完了,剩下的就是我以后慢慢的添加东西.进行...

admin@copie.cn 2018 年 04 月 26 日 暂无评论

Python_弱引用_总结

Python_弱引用_总结弱引用不会增加对象的引用数量弱引用在缓存应用中很有用保存缓存对象。Python 控制台会自动把 _ 变量绑定到结果不为 None 的表达式结果上不明显的隐式赋值会为对象创建新引用可以用 weakref.ref(a_set) 为 a_set 创建一个弱引用不建议使用 weakref.ref 来创建一个对象的弱引用WeakValueDictionary 使用WeakVa...

admin@copie.cn 2018 年 04 月 26 日 暂无评论

Python 安全的使用 eval

# Python 安全的使用 eval我们有时候,会看到有些人为了取巧的对表达式进行求值,使用 eval。虽然简单但是使用不可靠的外部代码,很不安全的。所以在这里推荐一个 Python 抽象语法树 模块中的一个函数 ast.literal_eval 就可以 很安全的解决。翻译的官方文档ast.literal_eval(node_or_string)安全计算表达式节点或包含Python字面值或...

admin@copie.cn 2018 年 04 月 13 日 暂无评论

Python_super_深入理解

Python_super_深入理解这个 Blog 是我年内要写的但是由于各种不可抗力(懒),一直都拖着,然后欠下的帐早晚都是要还的.:)手动苦笑我在上一篇文章多重继承与方法解析这篇Blog里面说到了,Python的多继承与Python是如何处理如果多继承的话,发生函数名冲突的话保留那些函数.但是我们还要研究一个问题就是子类是调用父类的方法,所用的 super() 是怎么样的一个形态.单继承很...

admin@copie.cn 2018 年 03 月 15 日 暂无评论

多重继承与方法解析顺序

多重继承与方法解析顺序任何实现多重继承的语言都要处理潜在的命名冲突,这种冲突由不相关的祖先类实现同名的方法引起。这种冲突称作“菱形问题”如下图(左)说明“菱形问题”的UML类图;(右)虚线箭头是下面示例代码(代码段一)的方法解析顺序代码段一 diamond.py: 上图中的 A,B,C和D四个类class A: def ping(self): print('ping:...

admin@copie.cn 2018 年 03 月 14 日 暂无评论

Python 实现在线分辨上下联

分辨上下联快过年了,每年贴春联都会被老爸怼: "都大学生了连对联都不会贴"。所以这个神器诞生了。废话不多说先上链接在线分辨上下联原理分析首先先了解人工是怎样判断一副对联:平仄方法区分:看对联的最后一个字,上联最后一个字是三声和四声(仄声),下联的最后一个字是一声和二声(平声),如下联:兴xīng 一声 是上联,旺wàng四声是下联。张贴方法区分:对联的张贴撰写要求是上联在右侧,下联在左侧。因...

admin@copie.cn 2018 年 03 月 14 日 暂无评论

docker 使用总结

docker 使用总结doker 基础命令docker build> 通过 dockerfile 新建一个镜像 >> 主要可选的参数有 >>> -f 指定dockerfile</br> >>> -c 与CPU相关</br> >>> -m 与内存相关</br> >>>...

admin@copie.cn 2018 年 02 月 08 日 暂无评论

archlinux 调整字体优先级

archlinux 调整字体优先级用 archlinux 我一直用的就是思源黑体中等。但是我一般就会不安装其他字体包括宋体。这让我看 word 十分的麻烦。没有办法我还要安装上宋体在系统的默认优先级比较高所以导致 chrome 和其他的一些软件都是宋体十分的难看。我找了很长时间要改变这个。还好我今天刚刚好解决了这个问题。这里记录一下。我们这里以思源黑体为例来解决这个问题修改文件 /etc/f...

admin@copie.cn 2018 年 01 月 08 日 暂无评论

Python nonlocal 声明

Python nonlocal 声明看这篇 blog 的时候假定你已经对于Python-变量作用域规则和Python 闭包里面所说的知识有学习.我们在 Python 闭包 实现的 make_averager 函数的方法效率不高.在代码中所有的值都存储在历史数列中然后每次调用 average 时使用 sum 求和. 更好的实现是,只储存目前的总值和元素的个数,然后使用这两个数计算均值.代码段一...

admin@copie.cn 2018 年 01 月 04 日 暂无评论

Python 变量作用域规则

Python 变量作用域规则想要了解 Python 变量作用域规则,先看一下我这篇blogPython装饰器-LEGB命名空间来了解Python LEGB的访问规则下面说的会在这个基础之上.变量作用域我们定义并测试一个函数,它读取两个变量的值:一个是局部变量 a ,是函数的参数; 另一个是变量 b, 这个函数没有定义它.代码端一 : 一个函数,读取一个局部变量和一个全局变量In [1]: d...

admin@copie.cn 2018 年 01 月 04 日 暂无评论

Linux 下安装 PowerShell 并创建配置文件

Linux 下安装 PowerShell 并创建配置文件Linux 安装 PowerShell安装教程这里是官方给出的教程如果你用的是 红帽系,或者 debian 系的话比较简单.由于我用的是 Arch 要用 AUR 安装 PowerShell-bin 从源码安装比较麻烦所以直接安装二进制还是比较好的.看官方教程安装还是比较简单的.创建配置文件在 Windows PowerShell 提示符...

admin@copie.cn 2018 年 01 月 02 日 暂无评论