搜索到与相关的文章
Python

聊聊 Python 的单元测试框架(二):nose 和它的继任者 nose2

作者:HelloGitHub-ProdesireHelloGitHub的《讲解开源项目》系列,项目地址:https://github.com/HelloGitHub-Team/Article一、nosenose是一个第三方单元测试框架,它完全兼容unittest,并且号称是一个更好用的测试框架。那么nose除了具备unittest的所有功能外,还具有哪些优势呢?1.1用例编写用例的编写方式除了编写继承于unittest.TestCase的测试类外,还可以编

系统 2019-09-27 17:54:38 1933

Python

Python 200行代码实现一个滑动验证码过程详解

前言做网络爬虫的同学肯定见过各种各样的验证码,比较高级的有滑动、点选等样式,看起来好像挺复杂的,但实际上它们的核心原理还是还是很清晰的,本文章大致说明下这些验证码的原理以及带大家实现一个滑动验证码。实际上这类验证码的校验是分为两个步骤的:1.第一步就是前端的校验。一般来说,登录注册页面在点击提交的时候都会伴随着一个表单提交,在表单提交的时候会有JavaScript事件的触发。如果加入了验证码,那么在表单提交的时候会多加一个额外的验证,判断这个验证码是否已经

系统 2019-09-27 17:54:32 1933

Python

Python面向对象编程——多态、多态性、鸭子类型

Python面向对象编程——多态、多态性、鸭子类型一、多态多态指的是一类事物有多种形态,比如动物有多种形态:人,狗,猪importabcclassAnimal(metaclass=abc.ABCMeta):#同一类事物:动物@abc.abstractmethoddeftalk(self):passclassPeople(Animal):#动物的形态之一:人deftalk(self):print('sayhello')classDog(Animal):#动物

系统 2019-09-27 17:53:42 1933

Python

深入理解Python中range和xrange的区别

脚本之家已经给大家介绍过range和xrange的区别的基础知识,有兴趣的朋友可以参阅:python中xrange和range的区别python中range()与xrange()用法分析本次小编给大家带来的是深入理解range和xrange之间的区别。两种用法介绍如下:1.range([start],stop[,step])返回等差数列。构建等差数列,起点是start,终点是stop,但不包含stop,公差是step。start和step是可选项,没给出s

系统 2019-09-27 17:53:10 1933

Python

Python函数式编程:从入门到走火入魔

附Java/C/C++/机器学习/算法与数据结构/前端/安卓/Python/程序员必读书籍书单大全:书单导航页(点击右侧极客侠栈即可打开个人博客):极客侠栈①【Java】学习之路吐血整理技术书从入门到进阶最全50+本(珍藏版)②【算法数据结构+acm】从入门到进阶吐血整理书单50+本(珍藏版)③【数据库】从入门到进阶必读18本技术书籍网盘吐血整理网盘(珍藏版)④【Web前端】从HTML到JS到AJAX到HTTP从框架到全栈帮你走更少弯路(珍藏版)⑤【pyt

系统 2019-09-27 17:53:09 1933

Python

Python中eval带来的潜在风险代码分析

0x00前言eval是Python用于执行python表达式的一个内置函数,使用eval,可以很方便的将字符串动态执行。比如下列代码:>>>eval("1+2")>>>eval("[xforxinrange(10)]")[0,1,2,3,4,5,6,7,8,9]当内存中的内置模块含有os的话,eval同样可以做到命令执行:>>>importos>>>eval("os.system('whoami')")win-20140812chj\administrat

系统 2019-09-27 17:53:02 1933

Python

Python的json函数

json.load读取文件(file),解析为json对象(dict类型);json.loads读取字符串(string),解析为json对象;json.dump写文件(file),将json对象写入文件;json.dumps写字符串,将json对象写成string。importjsonimportosjson_obj={'name':'Michael','age':13}print("jsondict:",type(json_obj))#json对象是一

系统 2019-09-27 17:52:39 1933

Python

Python 命令行之旅:使用 argparse 实现 git 命令

Python命令行之旅:使用argparse实现git命令作者:HelloGitHub-ProdesireHelloGitHub的《讲解开源项目》系列,项目地址:https://github.com/HelloGitHub-Team/Article前言在前面三篇介绍argparse的文章中,我们全面了解了argparse的能力,相信不少小伙伴们都已经摩拳擦掌,想要打造一个属于自己的命令行工具。本文将以我们日常工作中最常见的git命令为例,讲解如何使用arg

系统 2019-09-27 17:52:36 1933

Python

Python:logging.NullHandler 的使用

在使用peewee框架时,默认是不会出现日志消息的。frompeeweeimportModel,CharField,DateTimeField,IntegerFieldfrompeewee_mssqlimportMssqlDatabasedb=MssqlDatabase(database='test',host='.',user='sa',password='sa')classBaseModel(Model):classMeta:database=dbcl

系统 2019-09-27 17:52:28 1933

Python

1 Python命令行参数(脚本神器)

1#!/usr/bin/envpython3.72#-*-coding:utf-8-*-3#Author:Lancer2019-09-0210:07:2145importsys,getopt67defusage():8print("usagecall")910defmain():11try:12opts,args=getopt.getopt(sys.argv[1:],"ho:v",["help","output="])13print(sys.argv[1:

系统 2019-09-27 17:52:18 1933