搜索到与相关的文章
Python

对python特殊函数 __call__()的使用详解

__call__在Python中,函数其实是一个对象:>>>f=abs>>>f.__name__'abs'>>>f(-123)由于f可以被调用,所以,f被称为可调用对象。所有的函数都是可调用对象。一个类实例也可以变成一个可调用对象,只需要实现一个特殊方法__call__()。我们把Person类变成一个可调用对象:classPerson(object):def__init__(self,name,gender):self.name=nameself.gen

系统 2019-09-27 17:51:14 2257

Python

反转了!“只问了1个框架,就给了35K的Python岗”

Python还有“敌人”吗?最近网络上一则帖子吸引了笔者,大意内容为:据说A是有2年多经验的Python工程师,面一个公司相关的岗位,由于人手紧缺,所以只问了一个框架,就按笔者提的35K办理了入职。(35K为A的砍价策略)关于这则帖子背后的动机或者真实性,我们不再去追究。不过这从侧面反映出了Python的火热,也说明了Python的壮大带给其他语言的焦虑和压力。所以,当我们聊Python时,我们究竟该聊些什么?这四个Python项目,让你瞬间读懂Pytho

系统 2019-09-27 17:51:06 2257

Python

十大经典排序算法 python版

0.概述01.算法分类在排序算法中,根据时间复杂度的不同可以将排序算法分为两类:比较类排序:通过比较来决定元素间的相对次序,由于其时间复杂度不能突破O(nlogn)(下限),因此称为非线性时间比较类排序。非比较类排序:不通过比较来决定元素间的相对次序,它可以突破基于比较排序的时间下界,以线性时间运行,因此称为线性时间非比较类排序。02.算法复杂度03.稳定和不稳定稳定:如果a原本在b前面,而a=b,排序之后a仍然在b的前面。不稳定:如果a原本在b的前面,而

系统 2019-09-27 17:50:32 2257

Python

看懂Python这十大特征,可少走一半弯路,网友大呼:为什么不早点告诉我!

关于PythonPython是一种极少数能声言兼具简单与功能强大的编程语言。你将惊异于发现你正在使用的这门编程语言是如此简单,它专注于如何解决问题,而非拘泥于语法与结构。名字背后的故事Python的创造者吉多·范罗苏姆(GuidovanRossum)采用BBC电视节目《蒙提·派森的飞行马戏团(MontyPython’sFlyingCircus,巨蟒剧团)》的名字来为这门编程语言命名。尽管他本人并不特别喜欢蟒蛇这种通过在猎物身边卷曲自己的身体以此来碾碎猎物身

系统 2019-09-27 17:50:31 2257

Python

python全栈开发基础知识学习——Django框架(五、ORM操作)

目录一、数据库的配置二、DjangoORM语法1.模型之间的三种关系:一对一,一对多,多对多。2.模型常用的字段类型参数3.Field重要参数4.表(模型)的创建5.单表操作1.创建记录2.修改记录3.删除记录4.查询记录6.多表操作(多对多关系)7.聚合查询和分组查询8.F查询和Q查询9.QuerySet的惰性机制一、数据库的配置1django默认支持sqlite,mysql,oracle,postgresql数据库。<1>sqlitedjango默认使

系统 2019-09-27 17:50:13 2257

Python

python图片二值化提高识别率

importcv2fromPILimportImagefrompytesseractimportpytesseractfromPILimportImageEnhanceimportreimportstringdefcreateFile(filePath,newFilePath):img=Image.open(filePath)#模式L”为灰色图像,它的每个像素用8个bit表示,0表示黑,255表示白,其他数字表示不同的灰度。Img=img.convert(

系统 2019-09-27 17:49:08 2257

Python

Python基础三

1.字典--dict字典是无序,可变的键:使用不可变数据类型(可哈希),键是唯一的值:可以任意增加dic["键"]="值"#暴力添加dic.setdefault("键","值")#存在不添加删除deldic["键"]dic.pop("键")dic.clear()改dic["键"]="值"dic.update("要更新的字典")查for循环查询的是字典的键get("键")#存在返回字典中键对应的值,不存在返回Nonedic["键"]#存在返回字典中键对应的值

系统 2019-09-27 17:47:32 2257

Python

巧用python和libnmapd,提取Nmap扫描结果

每当我进行内网渗透面对大量主机和服务时,我总是习惯使用自动化的方式从nmap扫描结果中提取信息。这样有利于自动化检测不同类型的服务,例如对web服务进行路径爆破,测试SSL/TLS服务使用的密钥或协议,以及其他有针对性的测试。我在渗透测试中也会经常使用到IPthon或*nixshell,而这些又都能够通过Python来访问,无论是直接在脚本中使用、在REPL环境下使用,还是将代码写入到磁盘上然后通过shell命令访问都是非常好用的。为了完成这些,libnm

系统 2019-09-27 17:38:10 2257

Python

python 字典(dict)按键和值排序

python字典(dict)的特点就是无序的,按照键(key)来提取相应值(value),如果我们需要字典按值排序的话,那可以用下面的方法来进行:1下面的是按照value的值从大到小的顺序来排序。dic={'a':31,'bc':5,'c':3,'asd':4,'aa':74,'d':0}dict=sorted(dic.items(),key=lambdad:d[1],reverse=True)print(dict)输出的结果:[('aa',74),('a

系统 2019-09-27 17:38:09 2257

Python

详解Python的Django框架中inclusion_tag的使用

另外一类常用的模板标签是通过渲染其他模板显示数据的。比如说,Django的后台管理界面,它使用了自定义的模板标签来显示新增/编辑表单页面下部的按钮。那些按钮看起来总是一样的,但是链接却随着所编辑的对象的不同而改变。这就是一个使用小模板很好的例子,这些小模板就是当前对象的详细信息。这些排序标签被称为包含标签。如何写包含标签最好通过举例来说明。让我们来写一个能够产生指定作者对象的书籍清单的标签。我们将这样利用标签:{%books_for_authorautho

系统 2019-09-27 17:37:40 2257