作者:HelloGitHub-ProdesireHelloGitHub的《讲解开源项目》系列,项目地址:https://github.com/HelloGitHub-Team/Article前言在前面三篇介绍argparse的文章中,我们全面了解了argparse的能力,相信不少小伙伴们都已经摩拳擦掌,想要打造一个属于自己的命令行工具。本文将以我们日常工作中最常见的git命令为例,讲解如何使用argparse库来实现一个真正可用的命令行程序。本系列文章默认
系统 2019-09-27 17:52:35 2113
扫描服务器ip开放端口,用线程池ThreadPoolExecutor,i7的cpu可以开到600个左右现成,大概20s左右扫描完65535个端口,根据电脑配置适当降低线程数#!/usr/local/python3.6.3/bin/python3.6#coding=utf-8importsocketimportdatetimeimportrefromconcurrent.futuresimportThreadPoolExecutor,waitDEBUG=Fa
系统 2019-09-27 17:52:19 2113
代理ProxyHandler处理器(代理)1、代理的原理:在请求目的网站之前,先请求代理服务器,然后让代理服务器去请求目的网站,代理服务器拿到目的服务器的网站数据后,再转发给我们的代码。2、http://httpbin.org/ip这个网站可以方便我们查看一些http请求参数3、使用代理的方法:ProxyHandle这个方法需要传入一个字典,key:请求schema,value:代理服务器ip+端口fromurllibimportrequest##url=
系统 2019-09-27 17:50:55 2113
在了解装饰器的之前一定要先了解函数作为参数传递,什么是函数内嵌,请参考我之前写的博客函数简介因为在python里面,函数也是对象,也可以作为参数进行传递.python装饰器本质也是一种特殊函数,它接收的参数是函数对象,然后动态地函数参数添加额外的功能,而不用修改原有的函数对象.python装饰器传入的参数是函数,返回的值也是函数!python装饰器思想有点类似设计模式的装饰模式,其意图是动态地给函数对象添加额外的功能.比如像增加日志打印的功能,有点面向切面
系统 2019-09-27 17:50:12 2113
更详细见:https://blog.csdn.net/Lord_sh/article/details/92653790>>>x=np.arange(0,16).reshape(4,4)>>>xarray([[0,1,2,3],[4,5,6,7],[8,9,10,11],[12,13,14,15]])>>>idx=[[1,0,0,0],[0,1,0,0],[0,1,0,0],[0,0,0,1]]>>>idx[[1,0,0,0],[0,1,0,0],[0,1,
系统 2019-09-27 17:49:14 2113
Pythonpass语句使用当语句要求不希望任何命令或代码来执行。pass语句是一个空(null)操作;在执行时没有任何反应。pass也是代码最终会是有用的,但暂时不用写出来(例如,在存根为例):语法Pythonpass语句语法如下:pass例子#!/usr/bin/pythonforletterin'Python':ifletter=='h':passprint'Thisispassblock'print'CurrentLetter:',letterpr
系统 2019-09-27 17:47:44 2113
1)忘记在if,elif,else,for,while,class,def声明末尾添加:(导致“SyntaxError:invalidsyntax”)该错误将发生在类似如下代码中:ifspam==42print('Hello!')2)使用=而不是==(导致“SyntaxError:invalidsyntax”)=是赋值操作符而==是等于比较操作。该错误发生在如下代码中:ifspam=42:print('Hello!')3)错误的使用缩进量。(导致“Inde
系统 2019-09-27 17:47:06 2113
一.基本数据类型整数:int字符串:str(注:\t等于一个tab键)布尔值:bool列表:list(元素的集合)列表用[]元祖:tuple元祖用()字典:dict注:所有的数据类型都存在想对应的类列里二.列表所有数据类型:基本操作:•索引•切片•追加•删除•长度•切片•循环•包含listclasslist(object):"""list()->newemptylistlist(iterable)->newlistinitializedfromiterab
系统 2019-09-27 17:46:22 2113
字符串中字符大小写的变换1.str.lower()//小写>>>'SkatE'.lower()'skate'2.str.upper()//大写>>>'SkatE'.upper()'SKATE'3.str.swapcase()//大小写互换>>>'SkatE'.swapcase()'sKATe'4.str.title()//首字母大写,其余的小写>>>'SkatE'.title()'Skate'字符串在输出时的对齐1.str.ljust(width,[fil
系统 2019-09-27 17:38:38 2113
级别:初级BrettMcLaughlin(brett@newInstance.com),作家,编辑,O'ReillyMediaInc.2006年1月04日Ajax由HTML、JavaScript™技术、DHTML和DOM组成,这一杰出的方法可以将笨拙的Web界面转化成交互性的Ajax应用程序。本系列的作者是一位Ajax专家,他演示了这些技术如何协同工作——从总体概述到细节的讨论——使高效的Web开发成为现实。他还揭开了Ajax核心概念的神秘面纱,包括XML
系统 2019-08-29 23:47:22 2113