importhashlibclassMd5_enc():def__init__(self,key="cxj"):self.key=keyself.maker=hashlib.md5()defmd5_str(self,message):self.maker.update(bytes(self.key,encoding="utf-8"))self.maker.update(bytes(message,encoding="utf-8"))rel=self.mak
系统 2019-09-27 17:55:15 1970
在Python中,装饰器的本质就是Python中的一个函数,其来源自Python面向对象。装饰器是在函数调用之上的修饰。这些修饰仅是当声明一个函数或方法的时候,才会被应用额外的调用。有点类似Java中的AOP(面向方面编程)。同时在设计模式中,还有装饰器模式,也即是:装饰器模式(DecoratorPattern)允许向一个现有的对象添加新的功能,同时又不改变其结构。原则是:不修改被修饰函数的源代码,不修改被修饰函数的调用方式。装饰器的用途:引入日志增加计时
系统 2019-09-27 17:55:09 1970
1、BinarySearch算法简介二分查找,它的时间复杂度是O(logn)。其核心思想有点类似分治思想。即每次都通过跟区间中的中间元素对比,将待查找的区间缩小为一半,直到找到要查找的元素,或者区间被缩小为0。但是二分查找的代码实现比较容易写错。你需要着重掌握它的三个容易出错的地方:循环退出条件、mid的取值,low和high的更新。二分查找虽然性能比较优秀,但应用场景也比较有限。底层必须依赖数组,并且还要求数据是有序的。对于较小规模的数据查找,我们直接使
系统 2019-09-27 17:54:58 1970
网上很多的滚动条办法,可能是系统间的差异,或者浏览器的差役,导致结果可能不尽人意我的经常使用的环境是,ubuntu+chrome+chromedirver+selenium+python3.5.2以下笔记,是给基于上环境的滚动到指定位置tagelement=driver..find_elements_by_xpath("//div[@class='_3-kxx']")#目标元素的定位筛选driver.execute_script("returnargume
系统 2019-09-27 17:54:55 1970
vim有各种强大的插件,这不仅归功于其提供的用来编写插件的脚本语言vimL,还得益于它良好的接口实现,从而支持python等语言编写插件。当vim编译时带有+python特性时就能使用python2.x编写插件,+python3则支持python3.x,可以使用vim--version来查看vim的编译特性。要使用python接口,可以用:hpython来查看vim提供的帮助文档,本文做一个简单的介绍。我们都知道在vim里可以执行bash命令,只需要:!c
系统 2019-09-27 17:54:51 1970
Python函数编程——迭代器我们已经知道,可以直接作用于for循环的数据类型有以下几种:1、类是集合数据类型,如list、tuple、dict、set、str等;2、一类是generator,包括生成器和带yield的generatorfunction。这些可以直接作用于for循环的对象统称为可迭代对象:Iterable,可迭代的意思就是可遍历、可循环。可以使用isinstance()判断一个对象是否是Iterable对象:>>>fromcollecti
系统 2019-09-27 17:54:50 1970
1.以前的方法如果是要获得程序运行的当前目录所在位置,那么可以使用os模块的os.getcwd()函数。如果是要获得当前执行的脚本的所在目录位置,那么需要使用sys模块的sys.path[0]变量或者sys.argv[0]来获得。实际上sys.path是Python会去寻找模块的搜索路径列表,sys.path[0]和sys.argv[0]是一回事因为Python会自动把sys.argv[0]加入sys.path。具体来说,如果你在C:\test目录下执行p
系统 2019-09-27 17:54:47 1970
常见算法:一、排序引入1.排序与搜索排序算法(英语:Sortingalgorithm)是一种能将一串数据依照特定顺序进行排列的一种算法。2.排序算法的稳定性稳定性:稳定排序算法会让原本有相等键值的纪录维持相对次序。18385672(4,1)(3,1)(3,7)(5,6)(3,7)(3,1)如果一个排序算法是稳定的,当有两个相等键值的纪录R和S,且在原本的列表中R出现在S之前,在排序过的列表中R也将会是在S之前。不稳定排序算法可能会在相等的键值中改变纪录的相
系统 2019-09-27 17:54:46 1970
使用beautifulsoup爬取小说,并整合到txt中。"""======================@Auther:CacheYu@Time:2019/9/16:16:09======================"""#-*-coding:utf-8-*-importurllib.requestimporturllib.errorimportbs4frombs4importBeautifulSoupdefreaddown(url):soup=B
系统 2019-09-27 17:54:27 1970
最近在实习,boss给布置了一个python的小任务,学习过程中发现copy()和deepcopy()这对好基友实在是有点过分,搞的博主就有点傻傻分不清啊,但是呢本着一探到底的精神,还是要查资料搞清楚这对好基友的区别。其实呢,copy()与deepcopy()之间的区分必须要涉及到python对于数据的存储方式。首先直接上结论:―�C我们寻常意义的复制就是深复制,即将被复制对象完全再复制一遍作为独立的新个体单独存在。所以改变原有被复制对象不会对已经复制出来
系统 2019-09-27 17:53:42 1970
如果你对深度学习和卷积神经网络感兴趣,但是并不知道从哪里开始,也不知道使用哪种库,那么这里就为你提供了许多帮助。在这篇文章里,我详细解读了9个我最喜欢的Python深度学习库。这个名单并不详尽,它只是我在计算机视觉的职业生涯中使用并在某个时间段发现特别有用的一个库的列表。这其中的一些库我比别人用的多很多,尤其是Keras、mxnet和sklearn-theano。其他的一些我是间接的使用,比如Theano和TensorFlow(库包括Keras、deepy
系统 2019-09-27 17:53:33 1970
概述由于Python2的官方维护期即将结束,越来越多的Python项目从Python2切换到了Python3。可是,在实际的工作中,我发现好多人都是在用Python2的思维去写Python3的代码,Python3给我们提供了很多新的、很方便的特性,可以帮助我们快速的编写代码。f-strings(3.6+)在Python里面,我们经常使用format函数来格式化字符串,例如:user="JaneDoe"action="buy"log_message='Use
系统 2019-09-27 17:53:30 1970
原文链接:https://t.csdnimg.cn/wSsp「超级星推官/每周分享」是一个围绕程序员生活、学习相关的推荐栏目。CSDN出品,每周发布,暂定5期。关键词:靠谱!优质!本期内容,我们将抽1人送出由我司程序员奉为“超级神作”的《疯狂Python讲义》1本,并在文章内隐藏了5门好课,敬请关注。2019年,有人说是Python元年,背靠AI和大数据,连续半年拿下TOP1编程语言,这些都给了Python的底气,所以无论是薪资还是招聘需求,都越来越多了!
系统 2019-09-27 17:53:27 1970
python连接mysql的客户端importpymysql#导入模块conn=pymysql.connect(host='127.0.0.1',#主机模块port=3306,#端口号user='root',#用户名password='123',#密码database='db',#需要连接的库charset='utf8'#指定编码utf8)cursor=conn.cursor()#获取游标#cursor=conn.cursor(pymysql.cursor
系统 2019-09-27 17:53:19 1970
这里爬取的是http://sc.chinaz.com/tag_tupian/OuMeiMeiNv.html网站献上欧美美女!!!!fromlxmlimportetreeimporturllib.request,os,timeclassOuMeiSpider(object):def__init__(self,start_page,end_page):self.start_page=start_pageself.end_page=end_pageself.fi
系统 2019-09-27 17:53:14 1970