python
Michael_Zheng_Tech
从事软件开发,算法设计,改善系统性能
展开
-
Python的GIL是什么、怎么来的、对性能的影响
转载文章,探究python中的GIL。涉及GIL的由来、特点、性能影响。欢迎评论指正。转载 2017-07-19 11:08:27 · 2822 阅读 · 0 评论 -
关于Python中的None和null
在很多编程语言中,都有null这个值,作为值赋予给变量。Python中也有,但是是用None。使用None的原因是:1)null这个单词不够友好,对初学者来说不好理解。2)面向对象的语言都倾向用驼峰命名法,None符合驼峰命名法。在Python中,None是一个对象: >>> print(type(None))<class 'NoneType'>...原创 2018-09-24 10:24:55 · 1144 阅读 · 0 评论 -
Python使用技巧(持续更新)
1、dir()和help() dir()如果没有输入参数的话,返回当前范围内定义的模块、变量、方法;如果有输入参数的话,则返回输入参数包含的方法和属性。例如: >>> dir()['__builtins__', '__doc__', '__loader__', '__name__', '__package__', '__spec__', 'a']>>...原创 2018-09-24 11:05:14 · 168 阅读 · 0 评论 -
Python的动态加载机制
1、Python所有的模块加载到内存后,都会放在sys.modules中。 当我们在一个文件中import一个模块的时候,Python会先去sys.modules中查找是否已经加载过这个模块,如果是,则将这个模块的名字加入到正在调用import的local命名空间中;如果没有加载过这个模块,则从sys.path中按照模块名去查找,找到后加载到内存,并加入到sys.modules中。(所以...原创 2018-09-24 16:46:08 · 520 阅读 · 0 评论 -
Django Model高级特性
1、关于管理者,models.Manager:默认每个自定义的model都是objects对象是管理者,里面有很多平时常用的方法,比如filter()、save()等。可以根据需要自定义默认的管理者,或者添加多个管理者(但是除非自己设定,否则按顺序默认的按设置的第一个管理者就是默认管理者)。主要用于需要给model类自定义一些行为,或者覆盖一些已存在的行为。2、关于原生sql的执行:有两种执行...原创 2018-12-03 15:39:18 · 325 阅读 · 0 评论 -
python基础操作整理
数字类操作:1)取绝对值:abs(-2)原创 2019-09-05 10:07:25 · 140 阅读 · 0 评论 -
python的多进程库multiprocessing详解
背景:multiprocessing库用于进行python的多进程编程。一般来说,编程语言要进行并发编程,多线程会比多进程优先考虑,因为多线程比多进程更省资源。但是由于python底层的GIL的存在,导致了多线程编程时,实际上每个时刻只有一个线程在运行,也即只有一个核被利用起来,并没有起到并行的效果(此说法针对的是cpu密集型的代码,如果是I/O密集型的,多线程还是会有效果的)。于是为了真正利用...原创 2019-09-05 11:04:06 · 1983 阅读 · 1 评论 -
python的dataframe使用整理(持续更新)
1、替换列名,df1.rename()方法,可替换任意某列的列名。示例:2、合并操作之merge,一次性只能操作两个dataframe,支持左连接、右连接、外链接、内连接,默认为内连接。支持指定连接使用的key。示例:3、合并操作之concat,轴向连接,通过axis参数指定连接方向,默认axis=0,纵向连接。axis=1,横向连接。示例:4、分组计算,并重置columns值,使用g...原创 2019-09-05 14:06:01 · 1472 阅读 · 0 评论 -
python获取本机ip
import socketdef get_host_ip(): """ 查询本机ip地址 :return: ip """ s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) s.connect(('8.8.8.8', 80)) ip = s.getsockname()[0] ...原创 2019-09-10 16:41:59 · 131 阅读 · 0 评论