
Python
苏先生_404
这个作者很懒,什么都没留下…
展开
-
GIL,深浅拷贝,私有化
GILgil是什么:全局解析器锁gil作用:单核的情况下实现多任务gil解决方案: 进程换解析器(javapython)线程这块代码使用c,java去实现进程加协程提高效率科学计算使用单线程, 有堵塞的情况下可以使用多线程深拷贝与浅拷贝如果是不可变类型都是引用 api级别的基本都是浅copy 1. 深拷贝:递归所有的数据都复制一份,浪费资源 2. 浅...原创 2018-07-02 14:59:12 · 165 阅读 · 0 评论 -
闭包和装饰器
闭包闭包:两个函数的嵌套,外部函数返回内部函数的引用,外部函数一定有参数def 外部函数(参数): def 内部函数(): pass return 内部函数他跟函数之间的区别: 1.格式两个函数嵌套 2.闭包外部函数的参数可以在内存中保持装饰器装饰器是什么:闭包加@xxx装饰器的作用:在不改变原先的函数值跟调...原创 2018-07-02 14:59:50 · 138 阅读 · 0 评论 -
上下文管理器
实现上下文管理器,主要是为了简化代码,在一些文件操作和数据操作当中我们使用上下文管理器的方式可以在调用的时候更加快捷方式1: 以文件操作为例,首先我们定义一个类,类中需要有init,enter,exit两个方法,enter一般需要返回接下来操作文件的对象,而exit一般用于收尾,就是关闭文件操作,init一般就是初始化class MyFile(object):...原创 2018-07-02 15:00:26 · 381 阅读 · 0 评论 -
property详解
在实际开发中,在定义类中的属性的时候往往是属性私有化,方法公开化;可以理解为所有的属性都是私有属性,对外提供get和set方法用来获取和修改属性值,代码如下:class A(object): def __init__(self): self.__name = 'zs' self.__age = 18 def get_name(sel...原创 2018-07-03 12:32:40 · 353 阅读 · 0 评论 -
使用property创建python常量
python中没有常量,只是模仿Java中的常量常量在其他语言中,一般值得是不允许被修改,只可以访问一般为了区别常量和变量,常量名一般是全大写的python常量定义根据上面对常量的理解,有两点注意点: - 常量是不允许修改只能访问的 - 常量名是大写的 根据两点注意点,首先常量==只能访问,不能修改的==,所以我们可以定义一个私有的属性,并且属性名大写,然后对...原创 2018-07-03 12:33:24 · 204 阅读 · 0 评论 -
上下文管理器
实现上下文管理器,主要是为了简化代码,在一些文件操作和数据操作当中我们使用上下文管理器的方式可以在调用的时候更加快捷方式1: 以文件操作为例,首先我们定义一个类,类中需要有init,enter,exit两个方法,enter一般需要返回接下来操作文件的对象,而exit一般用于收尾,就是关闭文件操作,init一般就是初始化class MyFile(object):...原创 2018-07-03 12:33:57 · 166 阅读 · 0 评论 -
Python2转Python3
经常会遇到一些python2的代码,但是需要python3 来执行,官方提供了一个便捷的方式,在我们的python安装目录下,{Python_HOME}\Tools\scripts里面。运行 2to3.py 脚本,打印如下:python 2to3.py --helpUsage: 2to3 [options] file|dir ...Options: -h, --help ...原创 2018-11-22 16:20:13 · 204 阅读 · 0 评论