搜索到与相关的文章
Python

python generator与coroutine

pythongenerator与coroutine协程简单介绍协程,又称微线程,纤程,英文名Coroutine。协程是一种用户态的轻量级线程,又称微线程。协程拥有自己的寄存器上下文和栈,调度切换时,将寄存器上下文和栈保存到其他地方,在切回来的时候,恢复先前保存的寄存器上下文和栈。因此:协程能保留上一次调用时的状态(即所有局部状态的一个特定组合),每次过程重入时就相当于进入上一次调用的状态,换种说法:进入上一次离开时所处逻辑流的位置。优缺点优点:1.无需线程

系统 2019-09-27 17:45:41 1722

Python

让Python代码更快运行的5种方法

不论什么语言,我们都需要注意性能优化问题,提高执行效率。选择了脚本语言就要忍受其速度,这句话在某种程度上说明了Python作为脚本语言的不足之处,那就是执行效率和性能不够亮。尽管Python从未如C和Java一般快速,但是不少Python项目都处于开发语言领先位置。Python很简单易用,但大多数人使用Python都知道在处理密集型cpu工作时,它的数量级依然低于C、Java和JavaScript。但不少第三方不愿赘述Python的优点,而是决定自内而外提

系统 2019-09-27 17:45:40 1722

Python

Python文件读取的3种方法及路径转义

1.文件的读取和显示方法1:复制代码代码如下:f=open(r'G:\2.txt')printf.read()f.close()方法2:复制代码代码如下:try:t=open(r'G:\2.txt')printt.read()finally:ift:t.close()方法3:复制代码代码如下:withopen(r'g:\2.txt')asg:forlineing:printlinepython虽然每次打开文件都要关闭,但是可能会由于异常导致未关闭,因此我们

系统 2019-09-27 17:45:38 1722

Python

工作后的经验 | 做 Python 一定不要只会一个方向!

最近不少人在微信问我现在Python还好就业不好就业?发展前景怎么样?我30多岁了,还能不能转行编程?Python该怎么学?如果做Python到底该做爬虫还是数据分析还是web?......等等这样的问题,现在逐一谈下我的看法,进而引申出目前如果做python,最好要掌握的一些技能以及我个人认为的很稳的发展路线,这里分析的观点会以大部分普通开发者的角度来看待,对一些技术牛人可能就不太适用了。1、Python好就业吗?其实,对于这些问题,我是不太想回答的,可

系统 2019-09-27 17:45:29 1722

Python

[Python实战]使用栈实现简易计算器

我们这次实现的命令行计算器,支持加减乘除、括号、浮点数、负数,以及查看历史和退出功能。主要的思路:read-parse-print-loop。read阶段是指读取用户在提示符(cal>)之后输入的字符串。parse阶段包括:将用户输入的字符串分割成单个对象比如:符号+,或者数字1.2。其次将中缀表达式转化后缀表达式,接下来计算后缀表达式的数值。print阶段指的是将parse阶段的数值打印在终端上。loop阶段是指重复上述操作,除非用户输入exit符号或者

系统 2019-09-27 17:45:27 1722

Python

Python实现保证只能运行一个脚本实例

保证只能运行一个脚本实例,方法是程序运行时监听一个特定端口,如果失败则说明已经有实例在跑。使用装饰器实现,便于重用复制代码代码如下:importfunctoolsdefjust_one_instance(func):'''装饰器如果已经有实例在跑则退出复制代码代码如下::return:'''@functools.wraps(func)deff(*args,**kwargs):importsockettry:#全局属性,否则变量会在方法退出后被销毁globa

系统 2019-09-27 17:45:27 1722

Python

Python实现身份证号码解析

中国的居民身份证有18位。其中前17位是信息码,最后1位是校验码。每位信息码可以是0-9的数字,而校验码可以是0-9或X,其中X表示10。身份证校验码算法:设18位身份证号序列从左到右为:引用a[0],a[1],a[2],a[3],...,a[16],a[17]其中a[i]表示第i位数字,i=0,1,2,...,17,如果最后一位(校验位)是X,则a[17]=10每一位被赋予一个“权值”,其中,第i位的权值w[i]的计算方法是:引用w[i]=2**(17-

系统 2019-09-27 17:38:47 1722

Python

Linux系统上Nginx+Python的web.py与Django框架环境

1.编译nginx在网上买了一本《实战nginx-取代Apache的高性能服务器》,写的比较浅,主要是些配置方面的东西,不过却正是目前我所需要的。由于需要支持https和rewrite,所以除了nginx的源码之外,又下载了openssl-0.9.8r.tar.gz和pcre-8.12.tar.gz,把他们和nginx-1.0.4.tar.gz放到同一个目录。为了方便编译,笔者写了一个脚本,代码如下:#!/bin/bash#================

系统 2019-09-27 17:38:47 1722

Python

在Linux系统上通过uWSGI配置Nginx+Python环境的教程

1.安装ubuntu有uwsgi的ppa:add-apt-repositoryppa:stevecrozz/ppaapt-getupdateapt-getinstalluwsgi2.用uwsgi代替mod_wsgiNginx的整体配置这里不说了,假设已经明白Nginx的基本配置,那么uwsgi就类似这么配置:location/{includeuwsgi_paramsuwsgi_pass127.0.0.1:9090}再比如django就是:.......fr

系统 2019-09-27 17:38:46 1722

Python

Python的内存泄漏及gc模块的使用分析

一般来说在Python中,为了解决内存泄漏问题,采用了对象引用计数,并基于引用计数实现自动垃圾回收。由于Python有了自动垃圾回收功能,就造成了不少初学者误认为自己从此过上了好日子,不必再受内存泄漏的骚扰了。但如果仔细查看一下Python文档对__del__()函数的描述,就知道这种好日子里也是有阴云的。下面摘抄一点文档内容如下:Somecommonsituationsthatmaypreventthereferencecountofanobjectfr

系统 2019-09-27 17:38:39 1722