搜索到与相关的文章
Python

python的内存管理和垃圾回收机制详解

简单来说python的内存管理机制有三种1)引用计数2)垃圾回收3)内存池接下来我们来详细讲解这三种管理机制1,引用计数:引用计数是一种非常高效的内存管理手段,当一个pyhton对象被引用时其引用计数增加1,当其不再被引用时引用计数减1,当引用计数等于0的时候,对象就被删除了。2,垃圾回收(这是一个很重要知识点):①引用计数引用计数也是一种垃圾回收机制,而且是一种最直观,最简单的垃圾回收技术。在Python中每一个对象的核心就是一个结构体PyObject,

系统 2019-09-27 17:54:17 2055

Python

python itchat实现调用微信接口的第三方模块方法

itchat是一个开源的微信个人号接口,使用python调用微信从未如此简单。使用不到三十行的代码,你就可以完成一个能够处理所有信息的微信机器人。当然,该api的使用远不止一个机器人,更多的功能等着你来发现,比如这些。该接口与公众号接口itchatmp共享类似的操作方式,学习一次掌握两个工具。如今微信已经成为了个人社交的很大一部分,希望这个项目能够帮助你扩展你的个人的微信号、方便自己的生活。【文章背景】最近几天干啥都不来劲,昨晚偶然了解到Python里的i

系统 2019-09-27 17:54:04 2055

Python

Python 串口读写的实现方法

1.安装pyserialhttps://pypi.python.org/pypi/pyserialDoc:http://pythonhosted.org/pyserial/使用PythonPackageIndex(PyPi)pipinstallpyserial-3.1.1-py2.py3-none-any.whl2.Demoimportserialfromtimeimportsleepdefrecv(serial):whileTrue:data=seria

系统 2019-09-27 17:53:10 2055

Python

Python内存分配时的小秘密

原文链接:https://aiprocon.csdn.net/?utm_source=wx作者|豌豆花下猫来源|Python猫(ID:python_cat)Python中的sys模块极为基础而重要,它主要提供了一些给解释器使用(或由它维护)的变量,以及一些与解释器强交互的函数。本文将会频繁地使用该模块的getsizeof()方法,因此,我先简要介绍一下:该方法用于获取一个对象的字节大小(bytes)它只计算直接占用的内存,而不计算对象内所引用对象的内存这里

系统 2019-09-27 17:52:44 2055

Python

Python 之父再发文:构建一个 PEG 解析器

Python之父再发文:构建一个PEG解析器image花下猫语:Python之父在Medium上开了博客,现在写了两篇文章,本文是第二篇的译文。前一篇的译文在此,宣布了将要用PEG解析器来替换当前的pgen解析器。本文主要介绍了构建一个PEG解析器的大体思路,并介绍了一些基本的语法规则。根据Python之父的描述,这个PEG解析器还是一个很笼统的实验品,而他也预告了,将会在以后的系列文章中丰富这个解析器。阅读这篇文章就像在读一篇教程,虽然很难看懂,但是感觉

系统 2019-09-27 17:51:22 2055

Python

详解python3中zipfile模块用法

一、zipfile模块的简述zipfile是python里用来做zip格式编码的压缩和解压缩的,由于是很常见的zip格式,所以这个模块使用频率也是比较高的,在这里对zipfile的使用方法做一些记录。即方便自己也方便别人。zipfile里有两个非常常用的class,分别是ZipFile和ZipInfo,在绝大多数的情况下,我们只需要使用这两个class就可以了。ZipFile是主要的类,用来创建和读取zip文件而ZipInfo是存储的zip文件的每个文件的

系统 2019-09-27 17:51:00 2055

Python

Python 创建子进程模块subprocess详解

最近,我们老大要我写一个守护者程序,对服务器进程进行守护。如果服务器不幸挂掉了,守护者能即时的重启应用程序。上网Google了一下,发现Python有很几个模块都可以创建进程。最终我选择使用subprocess模块,因为在Python手册中有这样一段话:Thismoduleintendstoreplaceseveralother,oldermodulesandfunctions,suchas:os.system、os.spawn*、os.popen*、po

系统 2019-09-27 17:50:33 2055

Python

python利用7z批量解压rar的实现

一开始我使用了rarfile这个库,奈何对于含有密码的压缩包支持不好,在linux上不抛出异常;之后有又尝试了unrar。。比rarfile还费劲。。所以用了调用系统命令的方法,用7z来解压通过apt可以安装上7z-full和7z的rar插件有一个地方要注意-o和-p与后面的目录、密码之间没有空格!!同样可以用这个代码暴力破解压缩包密码#coding:utf-8importosimportzipfileimporttracebackimporttimeim

系统 2019-09-27 17:49:33 2055

Python

python 青蛙跳台阶,变态跳台阶

一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。n==1时,f(n)==1n==2时,f(n)==2n==3时,f(n)=f(2)+f(1)=最后一步跳1个+最后一步跳2个n==4时,f(n)=f(3)+f(2)=最后一步跳1个+最后一步跳2个···n-->f(n)==f(n-1)+f(n-2)#-*-coding:utf-8-*-classSolution:defjumpFloor(s

系统 2019-09-27 17:48:42 2055

Python

python多协程爬虫示例

写python协程时使用gevent模块和queue模块可以大大提高爬虫速度。在同时爬取多个网站时,原来用for循环一个网站一个网站按循序顺序爬,就像先烧饭后烧菜,两个步骤异步进行。使用多协程可以让爬虫自己选择爬取顺序,就像边烧饭边烧菜,两个步骤同步进行,速度自然快了。不多说了,来看下代码吧:fromgeventimportmonkeymonkey.patch_all()#打上多协程布丁,下面的程序就可以执行多协程了importrequests,geven

系统 2019-09-27 17:47:59 2055