os.remove不能用来删除文件夹,否则拒绝访问。#-*-coding:utf-8-*-importosif__name__=="__main__":os.remove('D:\\test')运行结果:删除空目录:#-*-coding:utf-8-*-importosif__name__=="__main__":os.rmdir('D:\\test')如果目录不为空会报错,如下:删除目录(不论目录是否为空):#-*-coding:utf-8-*-impo
系统 2019-09-27 17:46:47 2081
高性能服务器TornadoPython的web框架名目繁多,各有千秋。正如光荣属于希腊,伟大属于罗马。Python的优雅结合WSGI的设计,让web框架接口实现千秋一统。WSGI把应用(Application)和服务器(Server)结合起来。Django和Flask都可以结合gunicon搭建部署应用。与django和flask不一样,tornado既可以是wsgi应用,也可以是wsgi服务。当然,选择tornado更多的考量源于其单进程单线程异步IO的
系统 2019-09-27 17:38:14 2081
今天我们来学习一下python的数据可视化库,Matplotlib,是一个Python的2D绘图库通过这个库,开发者可以仅需要几行代码,便可以生成绘图,直方图,功率图,条形图,错误图,散点图等等废话不多说,我们直接通过例子来进行讲解。首先我们有一组数据如下:我们可以看到,这组数据有日期,还有日期对应的值,因为这组数据中的日期格式不是标准的日期格式那么我们对数据做一下转换,取1948年的整年的数据,来进行一个绘图操作importpandasaspdunrat
系统 2019-09-27 17:56:20 2080
程序结构程序三种结构顺序循环分支分支结构分支结构基本语法if条件表达式:语句1语句2语句3……条件表达式就是计算结果必须为布尔值的表达式表达式后边的冒号不能少注意if后边出现的语句,如果属于if语句块,则必须同一个缩进等级条件表达式结果为True执行if后边的缩进的语句块双向分支if……eles……表达多路分支很多分支的情况if条件表达式:语句1……elif条件表达式:语句2elif条件表达式:语句3else语句4elifeles可选只执行其中一种情况if
系统 2019-09-27 17:55:05 2080
再看继承真正的大餐来之前,还是来点儿开胃菜!回顾一下关于类的继承的知识:我们先看上面的代码,这是一个简单的类继承,我们可以看到父类Base和子类Son,它们中各有一个Testfunc方法,当我们实例化子类的对象sonobj时,可以看到初始化方法中黄色框框调用了Testfunc,那么这个时候执行的是哪个类里面的代码呢?我会告诉你执行的是子类里面的方法,不信就自己试试吧,代码在下面~为什么呢?其实这里是绕了一个圈,所以把很多人绕晕了,包括我!后来想想其实很容易
系统 2019-09-27 17:54:10 2080
转载自我自己的github博客——>半天钟的博客这篇博文讲述的python协程是不正式的、宽泛的协程,即通过客户调用.send(…)方法发送数据或使用yieldfrom结构驱动的生成器函数,而不是asyncio库采用的定义更为严格的协程。前言在事件驱动型编程中,协程常用于离散事件的仿真(在单个线程中使用一个主循环驱动协程执行并发活动)。协程通过显式自主地把控制权让步给中央调度程序从而实现了协作式多任务。所以,协程是python事件驱动型框架和协作式多任务的
系统 2019-09-27 17:53:36 2080
pythoneval函数功能:将字符串str当成有效的表达式来求值并返回计算结果。函数定义:eval(expression,globals=None,locals=None)将字符串str当成有效的表达式来求值并返回计算结果。globals和locals参数是可选的,如果提供了globals参数,那么它必须是dictionary类型;如果提供了locals参数,那么它可以是任意的map对象。python的全局名字空间存储在一个叫globals()的dict
系统 2019-09-27 17:53:18 2080
场景说明假设有一个mysql表被水平切分,分散到多个host中,每个host拥有n个切分表。如果需要并发去访问这些表,快速得到查询结果,应该怎么做呢?这里提供一种方案,利用python3的asyncio异步io库及aiomysql异步库去实现这个需求。代码演示importloggingimportrandomimportasynciofromaiomysqlimportcreate_pool#假设mysql表分散在8个host,每个host有16张子表TB
系统 2019-09-27 17:50:32 2080
一、表示字符串的各种形式s=‘hello’#索引:01234索引从0开始,即第一位为0位第一种:s#表示整个字符串s[:]#表示整个字符串s[0]#表示字符串的0位,即第一个字符s[-1]#打印字符串倒数第一位例:结果:例:结果:第二种:s[start:stop]#从satrt开始到stop-1结束例:结果:第三种:s[start:stop:step]#从satrt开始到stop-1结束,步长为step例:结果:第四种:s[:stop]#从0位开始索引到s
系统 2019-09-27 17:50:06 2080
希尔排序思想:算法先将要排序的一组数按某个增量d分成若干组,每组中记录的下标相差d.对每组中全部元素进行排序,然后再用一个较小的增量对它进行,在每组中再进行排序。当增量减到1时,整个要排序的数被分成一组,排序完成。一般的初次取序列的一半为增量,以后每次减半,直到增量为1。defshell_sort(list):n=len(list)gap=n//2new_list=[]whilegap>1:foriinrange(gap):iflist[i]>list[i
系统 2019-09-27 17:48:17 2080
例1:给一个列表如下,里面每个元素对应的是x和y的值a=[[5,2],[6,3],[8,8],[1,3]]现在要挑出y的值为3对应的x的值,即6和1importnumpyasnpa=[[5,2],[6,3],[8,8],[1,3]]#c=np.mat(a),因为只有矩阵(也可以用array)才能用a[0,0]这样的调用#表示第一个数的用法而list没有,故在最后append需要用到#注意:array也没有index这样的用法(只有list有,此题a已经是l
系统 2019-09-27 17:48:10 2080
Python是一个美丽的语言,可以激发用户对它的爱。所以如果你试图加入程序员行列,或者你有点厌倦C++,Perl,Java和其他语言,我推荐你尝试Python.Python有很多吸引程序员的功能,它易学,面向对象,字节码编译,免费且开源。还有运行时检查。完整快速的支持,可以执行各种任务的扩展。高效的Python在这篇文章,我想强调一些Python可以节约时间并最大限度地提高生产力的方面。在做准备时,我咨询了几个Pythonists,他们最节省时间的技巧是什
系统 2019-09-27 17:38:22 2080
一、anacondapython版本对应关系python2.7.14对应Anaconda2-5.0.1python3.6对应Anaconda3-4.3.0二、下载anaconda镜像下载地址:清华镜像源官方下载地址:https://repo.anaconda.com/archive/三、安装anaconda点击下载的exe文件进行安装添加环境变量:C:\python27;C:\python27\Scripts;C:\python36;C:\python36
系统 2019-09-27 17:57:11 2079
对于每一个学习Python的同学,想必对@符号一定不陌生了,正如你所知,@符号是装饰器的语法糖,@符号后面的函数就是我们本文的主角:装饰器。装饰器放在一个函数开始定义的地方,它就像一顶帽子一样戴在这个函数的头上。和这个函数绑定在一起。在我们调用这个函数的时候,第一件事并不是执行这个函数,而是将这个函数做为参数传入它头顶上这顶帽子,这顶帽子我们称之为装饰器。曾经我在刚转行做程序员时的一次的面试中,被面试官问过这样的两个问题:1、你都用过装饰器实现过什么样的功
系统 2019-09-27 17:55:11 2079
定义:zip([iterable,...])zip()是Python的一个内建函数,它接受一系列可迭代的对象作为参数,将对象中对应的元素打包成一个个tuple(元组),然后返回由这些tuples组成的list(列表)。若传入参数的长度不等,则返回list的长度和参数中长度最短的对象相同。利用*号操作符,可以将listunzip(解压),看下面的例子就明白了:>>>a=[1,2,3]>>>b=[4,5,6]>>>c=[4,5,6,7,8]>>>zipped=
系统 2019-09-27 17:54:31 2079