1.冒泡排序1.1算法思想冒泡排序是一种简单的排序算法。通过重复地遍历要排序的数列,一次比较两个元素,从最开始的一对到最后的一对(相当于一个长度为2的滑动窗口),如果它们的顺序错误(看从小到达排列还是从大到小排列)就把它们交换过来。如果是升序排列的话,每次遍历都会把最大值交换到最右边。然后重复这个过程,直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的头部,就像冒泡一样。这个算法不需要额外的空间,
系统 2019-09-27 17:49:41 2358
前言相比于列表,字典是更为灵活的一种数据结构。它能将相关信息关联起来,本文中我们一起来学习Python字典的基本用法,即如何添加、访问、修改和删除字典中的信息。1.最简单的字典在学习Python字典之前,我们一起来看一下字典到底是个什么玩意儿,这样有助于对其建立大体的印象,把抽象的概念具体化。举个例子,假如你正在帮助学校开发学生管理系统,需要保存单个学生的详细信息(学号、姓名、性别、年龄等),你会怎么做?这种问题随着我们学习Python的逐步深入,解决方法
系统 2019-09-27 17:49:40 2358
很多大佬在介绍代码案例的时候,用到的MNIST数据集都是在代码中直接下载使用,这样做存在好处,但是,同样存在弊端。好处:不需要附上数据集坏处:有时候网络不好的时候,或者远程服务关闭了,导致数据无法下载。下面介绍如何本地导入下载好的MNIST数据集:#-*-coding:utf-8-*-"""CreatedonMonMay2715:07:232019@author:AugustMe"""importnumpyasnpimportosimportgzip#定义
系统 2019-09-27 17:49:21 2358
self代表类的实例,而非类类的方法与普通的函数只有一个特别的区别——它们必须有一个额外的第一个参数名称,按照惯例它的名称是self。从执行结果可以很明显的看出,self代表的是类的实例,代表当前对象的地址,而self.class则指向类。self不是python关键字,我们把他换成其他也是可以正常执行的:classTest:def__init__(runoob):runoob.a='a'defprt(runoob):print(runoob.a)t=Te
系统 2019-09-27 17:48:04 2358
经常看到朋友圈或者空间里有朋友发布照片时,将朋友圈的照片切分为九宫格,参考了一些大神的博客资料,现整理如下;将图片分拆成九宫格的思路:读取图片->填充图片为正方形(fill_image函数)->将图片切分为9张(cut_image函数)->保存图片(save_image)->over代码实现如下:fromPILimportImageimportsys#将图片填充为正方形deffill_image(image):width,height=image.size
系统 2019-09-27 17:47:38 2358
有时候经常看到python代码中含有if__name__=='__main__'的代码,但是却一直不知道是什么意思,可以通过相应的代码去试验即可知道其作用。一、理解我们知道每个python文件既可以被直接执行,则可以作为脚本导入到其他文件中。从而构建各个模块的联系。而if__name__=='__main__'的作用也是用来区分是自己作为自己的文件进行执行的,还是被导入到其他文件当做脚本使用。为了更好的区分,看如下例子:步骤一:新建一个文件为:test.p
系统 2019-09-27 17:47:33 2358
一、logging模块讲解1.函数:logging.basicConfig()参数讲解:(1)level代表高于或者等于这个值时,那么我们才会记录这条日志(2)filename代表日志会写在这个文件之中,如果没有这个字段则会显示在控制台上(3)format代表我们的日志显示的格式自定义,如果字段为空,那么默认格式为:level:log_name:contentimportloggingLOG_FORMAT="%(asctime)s======%(level
系统 2019-09-27 17:45:46 2358
关于截断正态分布(truncatednormaldistribution)这里不再赘述,简言之就是在均值和方差之外,再指定正态分布随机数群的上下限,如[μ-3σ,μ+3σ],上代码:importmatplotlib.pyplotaspltimportscipy.statsasstatsimportpylabfrompylabimport*mu,sigma=5,0.7lower,upper=mu-2*sigma,mu+2*sigma#截断在[μ-2σ,μ+2
系统 2019-09-27 17:45:44 2358
最小编辑距离或莱文斯坦距离(Levenshtein),指由字符串A转化为字符串B的最小编辑次数。允许的编辑操作有:删除,插入,替换。具体内容可参见:维基百科―莱文斯坦距离。一般代码实现的方式都是通过动态规划算法,找出从A转化为B的每一步的最小步骤。从Google图片借来的图,Python代码实现,(其中要注意矩阵的下标从1开始,而字符串的下标从0开始):defnormal_leven(str1,str2):len_str1=len(str1)+1len_s
系统 2019-09-27 17:37:46 2358
这是《python基础教程》后面的实践,照着写写,一方面是来熟悉python的代码方式,另一方面是练习使用python中的基本的以及非基本的语法,做到熟能生巧。这个项目一开始比较简单,不过重构之后就有些复杂了,但是更灵活了。按照书上所说,重构之后的程序,分为四个模块:处理程序模块,过滤器模块,规则(其实应该是处理规则),语法分析器。先来说处理程序模块,这个模块的作用有两个,一个是提供那些固定的html标记的输出(每一个标记都有start和end),另一个是
系统 2019-09-27 17:56:47 2357
1.适当的空格逻辑行首的空白表示逻辑表示层次关系从而决定分组语句从新行的第一列开始风格统一都用四个空格不能随便加空格奥运五环#绘制奥运五环importturtleturtle.width(10)turtle.color("blue")turtle.circle(50)turtle.penup()turtle.goto(120,0)turtle.pendown()turtle.color("black")turtle.circle(50)turtle.pen
系统 2019-09-27 17:56:36 2357
就是个python爬虫就像爬个图看看源网站链接:http://www.setuw.com使用python编写,使用了threadpool等库,自行下载。环境:python3,win10,树莓派环境下测试通过网站元素结构代码#-*-coding:utf-8-*fromconcurrent.futuresimportThreadPoolExecutorimporturllib.requestimport_threadimportjsonimportthread
系统 2019-09-27 17:56:19 2357
原文链接:http://www.aosabook.org/en/twisted.html作者:JessicaMcKellarTwisted是用Python实现的基于事件驱动的网络引擎框架。Twisted诞生于2000年初,在当时的网络游戏开发者看来,无论他们使用哪种语言,手中都鲜有可兼顾扩展性及跨平台的网络库。Twisted的作者试图在当时现有的环境下开发游戏,这一步走的非常艰难,他们迫切地需要一个可扩展性高、基于事件驱动、跨平台的网络开发框架,为此他们决
系统 2019-09-27 17:55:02 2357
List是Python中常用的数据类型,它一个有序集合,即其中的元素始终保持着初始时的定义的顺序(除非你对它们进行排序或其他修改操作)。在Python中,向List添加元素,方法有如下4种方法(append(),extend(),insert(),+加号)1.append()追加单个元素到List的尾部,只接受一个参数,参数可以是任何数据类型,被追加的元素在List中保持着原结构类型。此元素如果是一个list,那么这个list将作为一个整体进行追加,注意a
系统 2019-09-27 17:53:47 2357
1.运行程序时,报以下错误:HTTPSConnectionPool(host='test.xxxx.com',port=443):Maxretriesexceededwithurl:/openapi/smartStock/000008.SZ.shtml(CausedbySSLError(SSLError(1,'[SSL:CERTIFICATE_VERIFY_FAILED]certificateverifyfailed(_ssl.c:600)'),))解决方
系统 2019-09-27 17:53:34 2357