1.类的继承与方法的重载上面就是先定义了一个类A,然后由定义了一个类B,B继承了类A,这样B就有了A的非私有属性和方法。classWasher:company='ZBL'def__init__(self,water=10,scour=2):self._water=water#不想让用户直接访问实例变量,可以标志成私有self.scour=scourself.year=2000#这是生产日期#属性包装,将water属性包装成方法,用户使用water时实际是访
系统 2019-09-27 17:54:42 2185
本文实例讲述了python3实现的zip格式压缩文件夹操作。分享给大家供大家参考,具体如下:思路:先把第一级目录中的文件进行遍历,如果是文件,则把它连同当前路径一起加入result(list),如果是子目录,则在整个目录上继续深度优先遍历,直到所有的文件都被加入。主要使用python3中zipfile模块:classzipfile.ZipFile(file[,mode[,compression[,allowZip64]]])参数说明:1.第一个参数file
系统 2019-09-27 17:54:25 2185
在使用正则表达式时,匹配算法存在贪婪模式和非贪婪模式两种模式,在《第11.8节Pytho正则表达式的重复匹配模式及元字符“?”、“*”、“+”功能介绍》中的重复匹配模式就是贪婪模式。什么是贪婪模式呢?就是匹配的时候,在整体匹配的情况下最大可能多的匹配最多的字符。非贪婪模式就是只要在字符串从左往右匹配模式串成功即停止匹配。如模式串“<.*>”在匹配字符串'b'时,会匹配到整个字符串,这就是贪婪模式,如果是非贪婪模式,则匹配到’’就结束了。关于贪婪模式和非贪婪
系统 2019-09-27 17:54:17 2185
python最大深度最小深度LeetCode104,111解法:1、BFS:寻找最大深度的时候,很容易想到就是,可以直接进行层次遍历,当无法在进行遍历下去的时候就是最深的深度;当寻找最小深度的时候,对每一个节点检查它是否是叶子节点,也就是检查它是否有左子树和右子树。2、DFS:每次进行遍历的时候,要判断是否是叶子节点,更新max深度的值和min深度的值。BFS版本#Definitionforabinarytreenode.#classTreeNode(ob
系统 2019-09-27 17:54:14 2185
Python之身份运算和None一、身份运算Python中有很多种数据类型,查看一个数据的类型的方法是type()name='Kwan'age=1print(type(name),type(age))判断一个数据类型是不是str,orint等,可以用身份运算符is运算符描述实例isis是判断两个标识符是不是引用自一个对象xisy,类似id(x)==id(y),如果引用的是同一个对象则返回True,否则返回Falseisnotisnot是判断两个标识符是不是
系统 2019-09-27 17:53:44 2185
看知乎的时候发现了一个“如何正确地吐槽”收藏夹,里面的一些神回复实在很搞笑,但是一页一页地看又有点麻烦,而且每次都要打开网页,于是想如果全部爬下来到一个文件里面,是不是看起来很爽,并且随时可以看到全部的,于是就开始动手了。工具1.Python2.72.BeautifulSoup分析网页我们先来看看知乎上该网页的情况:网址:,容易看到,网址是有规律的,page慢慢递增,这样就能够实现全部爬取了。再来看一下我们要爬取的内容:我们要爬取两个内容:问题和回答,回答
系统 2019-09-27 17:53:39 2185
在Udacity上课时学到了python的turtle方法,这是一个很经典的用来教小孩儿编程的图形模块,最早起源于logo语言。python本身内置了这个模块,其可视化的方法可以帮助小孩儿对编程的一些基本理念有所理解。在作业提交的论坛里看到很多turtle画出来的精美图形,想不出什么要画的东西,于是决定拿五星红旗来练练手。前期准备五星红旗绘制参数Turtle官方文档turtle的基本操作#初始化屏幕window=turtle.Screen()#新建turt
系统 2019-09-27 17:53:00 2185
目录第十五章、Python多线程之信号量和GIL1.信号量(Semaphore)2.GIL说明:第十五章、Python多线程之信号量和GIL1.信号量(Semaphore)信号量用来控制线程并发数的,Semaphore管理一个内置的计数器,每当调用acquire()时-1,调用release()时+1。计数器不能小于0,当计数器为0时,acquire()将阻塞线程至同步锁定状态,直到其他线程调用release()。其实就是控制最多几个线程可以操作同享资源。
系统 2019-09-27 17:51:26 2185
操作:输入带分页的地址,去掉最后面的数字,设置一下起始页数和终点页数功能:下载对应页码的所有页面并储存为HTML文件,以当前时间命名代码:#-*-coding:utf-8-*-#----------------------------#程序:百度贴吧的小爬虫#日期:2015/03/28#语言:Python2.7#操作:输入带分页的地址,去掉最后面的数字,设置一下起始页数和终点页数#功能:下载对应页码的所有页面并储存为HTML文件,以当前时间命名#-----
系统 2019-09-27 17:51:10 2185
本来我一直不知道怎么来更好地优化网页的性能,然后最近做python和php同类网页渲染速度比较时,意外地发现一个很简单很白痴但是我一直没发现的好方法(不得不BS我自己):直接像某些php应用比如Discuz论坛那样,在生成的网页中打印出“本页面生成时间多少多少秒”,然后在不停地访问网页测试时,很直观地就能发现什么操作会导致瓶颈,怎样来解决瓶颈了。于是我发现SimpleCD在生成首页时,意外地竟然需要0.2秒左右,真真不能忍:对比Discuz论坛首页平均生成
系统 2019-09-27 17:50:42 2185
事先在网上搜索了一大圈,头都大了,看到那么多文章写道在python里安装psycopg2的各种坑和各种麻烦,各种不成功。搜索了一下午,索性外出放松。晚饭后,又继续上psycopg2官网(http://initd.org/psycopg/docs/install.html)看了一些有关install的资料,感觉还是麻烦。最后上这个网(https://pypi.python.org/pypi/psycopg2/)上,准备用wheel的方式进行安装。不过在此网页
系统 2019-09-27 17:50:03 2185
NumPy提供了多种存取数组内容的文件操作函数。保存数组数据的文件可以是二进制格式或者文本格式。二进制格式的文件又分为NumPy专用的格式化二进制类型和无格式类型。一,tofile()和fromfile()tofile()将数组中的数据以二进制格式写进文件tofile()输出的数据不保存数组形状和元素类型等信息fromfile()函数读回数据时需要用户指定元素类型,并对数组的形状进行适当的修改从上面的例子可以看出,在读入数据时:需要正确设置dtype参数,
系统 2019-09-27 17:49:58 2185
目录一.冒泡排序--BubbleSort基本思想:优化后的冒泡排序二.选择排序--SelectionSort基本思想:三.插入排序--InsertionSort基本思想:四.希尔排序--ShellSort基本思想:五.堆排序--HeapSort基本思想:六.归并排序--MergeSort基本思想:七.快速排序--QuickSort基本思想:八.对比本博客的排序算法元素的排序顺序默认从小到大。一.冒泡排序–BubbleSort基本思想:两两比较相邻记录的元素
系统 2019-09-27 17:49:19 2185
玩转Python量化金融工具之NumPy一切事物的开头总是困难这句话,在任何一种科学上都是适用的。——马克思前言“手把手教你”系列将为Python初学者一一介绍Python在量化金融中运用最广泛的几个库(Library):NumPy(数组、线性代数)、SciPy(统计)、pandas(时间序列、数据分析)、matplotlib(可视化分析)。建议安装Anaconda软件(自带上述常见库),并使用JupyterNotebook交互学习。1、使用“import
系统 2019-09-27 17:49:04 2185
01前言Python现有的版本多,每个项目使用的Python版本都不一样,管理起来比较麻烦。github有一个项目叫做pyenv,它是一个多版本管理工具,非常好用,不但支持多版本,而且可以自由切换。本文以CentOS7平台为例,演示pyenv的功能。本文转自我个人的公众号:天目星,请大家多多关注。请关注我的微信公众号一、安装pyenv的项目地址:https://github.com/pyenv/pyenvPS:安装pyenv前需要安装相关依赖包$yumin
系统 2019-09-27 17:48:50 2185