自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(43)
  • 收藏
  • 关注

原创 js解密入门--有道翻译

文章目录一、测试二、分析分析post的Form Data部分三、代码实现四、思路总结声明有道翻译网站http://fanyi.youdao.com/一、测试首先拿到这个网站, 按照正常的流程, 带上请求的header和Form Data部分, 但是每次response都是errorcode50二、分析打开调试窗口在左边翻译框输入一个测试字符串,接下来注意这个请求是由那个js发起的...

2019-08-01 14:19:49 1068 2

原创 Restful设计风格

文章目录RESTFUL1.协议2.HTTP方法3.使用名词4.集合功能5.状态码6.错误处理7.版本8.返回结果RESTFULRESTful(Representational State Transfer),表现层状态转义。 通俗来讲就是:资源在网络中以某种表现形式进行状态转移。分解开来它首次出现在2000年ROY Fielding的博士论文中,Roy Fielding是HTTP规范的编写者...

2019-07-16 17:13:31 290

原创 Babel编译器的基本配置

Babel是一个JavaScript编译器Babel是一个工具链,主要用于将旧的浏览器或环境中的ECMAScript2015+代码转换为兼容的JavaScript版本。官网http://babeljs.io/6.X参考文档https://babeljs.io/docs/en/6.26.3/index.html离线转义安装配置1.初始化npm在项目目录中使用$ npm initThi...

2019-07-13 11:03:39 616

原创 windows下解决端口被占用问题

提示1080端口被占用了…打开命令行控制台win+r查看被占用端口的进程pidnetstat -anop TCP | findstr 1080在任务管理器下发现找不到该pid的应用程序控制台查找tasklist | findstr pid最后发现竟然是chrome占用了…...

2019-07-10 14:18:48 389

原创 JavaScript严格模式

文章目录严格模式使用"use strict"指令为什么使用严格模式?严格模式的限制严格模式严格模式就是在严格的条件下运行使用"use strict"指令"use strict"指令在ES5中增加的。他不是一个语句,但是是一个字面量表达式,向后兼容。严格模式下你不能使用未声明的变量。"use strict"指令只允许出现在脚本或者函数的开头为什么使用严格模式?消除JavaScrip...

2019-07-02 17:01:58 599

原创 JavaScript语法基础---函数以及异常处理

未在严格模式下运行,下一篇在strict模式下文章目录函数函数表达式箭头函数函数参数普通参数可变参数参数解构函数返回值作用域全局作用域命名空间局部作用域解构赋值解构方法使用场景异常处理抛出异常异常的捕获函数函数时由时间驱动的或者当它被调用时刻重复执行的代码块。//格式function 函数名(参数列表) { 函数体; // 每个字句之间用;号隔开,可以避...

2019-07-02 17:01:23 231

原创 JavaScript基础语法---流程分支

文章目录JS语法语句块流程分支条件分支switc...case...分支语句for循环c风格for循环while循环和do...while循环for..in和for...of循环JS语法语句块JS使用{}构成语句块。ES6之前语句是没有作用域的,从ES6开始支持块作用域,let声明的变量只能在块作用域中可见。function hello(){ let a = 1; var...

2019-07-02 16:58:55 167

原创 JavaScript语法基础

文章目录注释常量和变量数据类型JavaScript对象创建JavaScript对象直接创建对象的实例使用构造器创建新的对象实例JavaScript类字符串(String)转义字符(特殊字符)字符串属性和方法字符串属性字符串方法数值型(Number对象)进制常量属性Math(算数)对象算数值算数方法数字方法数组(Array)数组属性数组方法Symbols类型运算符算数运算符赋值运算符比较运算符逻辑运...

2019-07-02 16:57:23 319

原创 python元编程

前言元编程概念来自LISP和smalltalk。举个简单的栗子:我们写程序是直接写代码,是否能够用代码来生成未来我们需要的代码呢?这就是元编程, ‘类’的’类’,也就是比类更高级的东西。用来生成代码的程序成为元程序metaprogram,编写这种程序就称为元编程metaprogramming。python通过反射来实现元编程。python中,所有非object对象都继承自object...

2019-06-29 14:34:04 1264

原创 关系模型和SQL

文章目录一、数据库的发展:二、关系模型和SQL安装三、SQL语句:1.DCL控制语言2.DDL数据定义语言3.DML数据操作语言4.TCL事务控制语言一、数据库的发展:萌芽期:文件管理第一代:层次数据库、网络数据库第二代:SQL、关系型数据库第三代:面向对象的DBMS(OODBMS)、对象关系的DBMS(ORDBMS)二、关系模型和SQL安装service restart mari...

2019-06-27 21:01:42 1347

原创 ORM框架sqlalchemy的使用

文章目录前言SQLALchemy1.引擎设置(Engine Configuration)2.声明映射类型基类的创建实体类的创建3.创建映射类的实例创建和删除表4.创建会话session5.CURD操作实体的状态增修改删除查询1.条件查询2.排序3.分页4.消费者方法5.聚合分组6.关联查询前言SQLALchemy对象关系映射器提供了一种方法,用于将用户定义的Python类和数据库表相关联,并将...

2019-06-27 19:02:26 425

原创 Python网络编程底层包socket的使用

文章目录构建socket对象TCP编程TCP服务端编程TCP客户端UDP编程UDP服务端UDP客户端心跳机制UDP协议和TCP协议的区别Python中提供socket.py标准被,非常底层的接口库。Socket是一种通用的网络编程接口,和网络层次没有一一对应的关系。构建socket对象socket = socket.socket(family=AF_INET, type=SOCK_STRE...

2019-06-27 18:55:16 1585

原创 SQL注入攻击

SQL注入攻击如何理解SQL注入攻击SQL注入是一种将SQL代码添加到输入参数中,传递到服务器解析并执行的一种攻击手法。SQL注入是输入参数未经过过滤,然后直接拼接到SQL语句当中解析,执行达到预想之外的一种行为。称之为SQL注入攻击。SQL注入是如何产生的1.WEB开发人员无法保证所有的输入都已经过滤。2.攻击者利用发送给SQL服务器的输入参数构造可执行的SQL语句(可加入到get请...

2019-06-25 17:29:25 458 1

原创 利用python连接数据库(pymysql模块使用)

前言文章目录前言pymysql1.创建connection对象2.connection对象支持的方法:3.curser对象支持的方法:4.增删改查和事务处理示例:pymysql包 包含了一个基于PEP-249的纯python的MySQLclient,大多数公共API与mysqlclient和MyAQLdb兼容。要求:PythonCpython:2.7版本或者大于3.5版本PyPy:...

2019-06-25 17:27:28 426

原创 selectors ---高级I/O复用模块详解

文章目录一、前言1.I/O多路复用2.select、poll、epoll的三者的区别:①select②poll③epoll3.水平触发和边缘触发①水平触发②边缘触发4.select和epoll的特点二、概述三、selectors库的一些使用方法1.selectors库的一些常用类和方法2.selectors库的总结3.使用selectors构建传统聊天室服务端一、前言1.I/O多路复用- 大...

2019-06-19 19:29:35 953

转载 计算机网络中的五层协议的体系结构

OSI的七层协议体系结构的概念清楚,理论也比较完整,但它既复杂又不实用。TCP/IP体系结构则不同,但它却得到了非常广泛的应用。TCP/IP是一个四层的体系结构,它包含应用层、运输层、网际层和网络接口层(用网际层这个名字是强调这一层是为了解决不同网络的互联问题)。不过从实质上讲,TCP/IP只有最上面的三层,因为最下面的网络接口层并没有什么具体内容。因此在学习计算机网络的原理时往往采取折中的办法...

2019-06-15 16:27:48 37434 2

原创 进程和线程

进程(process)和线程(thread)进程:进程是计算机中的程序关于某数据集合上的一次运行活动,是操作系统进行资源分配和调度的基本单位,是操作系统结构的基础。当程序被系统加载到内存中就是进程,进程中存放着指令和数据,他是一个资源的容器,为进程里的所有线程提供共享资源,是对程序的一种静态描述顺便说下程序是指令和数据的有序集合,是一个静态的概念,而进程是处理机上的一次执行过程,是一个动态...

2019-06-15 11:39:57 202

原创 logging--日志记录模块

logging–日志记录工具1.日志级别:级别数值何时使用CRITICAL50严重的错误,晋档诊断问题时适用ERROR40由于严重的错误,程序的某些功能已经不能正常运行WARNING30(默认级别)表明有已经或即将发生的意外,程序仍按预期运行INFO20确认程序按照预期运行DEBUG10细节信息,仅当诊断问题时使用NOTS...

2019-06-13 11:46:22 575

原创 Python面向对象之描述器理解

文章目录反射概述反射相关的函数和方法反射相关的魔术方法object.__getattr__(self, name)object.__getattribute__(self, name)object.__setattr__(self, name, value)object.__delattr__(self, name)描述器描述器介绍1.描述器定义2.实现描述器的方法3.数据描述器和非数据描述器4....

2019-06-02 11:26:19 481

原创 Python实现双向链表容器化

双向链表Data 数据 + Next 指针 + Prev 指针,组成一个双向链表的内存结构;第一个内存结构称为 链头,最后一个内存结构称为 链尾;链头的 Prev 指针设置为 NULL, 链尾的 Next 指针设置为 NULL;Prev 指向的内存结构称为 前驱, Next 指向的内存结构称为 后继;双向链表的遍历是双向的,即如果把从链头的 Next 一直到链尾的[NULL] 遍历方...

2019-06-02 11:23:46 153

原创 Pyhton模块化以及包管理

文章目录1.模块化2.导入语句2.1 import2.2 from ... import ...2.3模块命名规范:2.4模块搜索顺序2.4.1 sys.path - 查看python模块的路径搜索顺序:2.4.2 sys.modules - 查看模块加载记录:3.模块运行3.1模块的属性:4.包4.1模块和包的总结:4.1 子目录4.2相对导入和绝对导入(这里有大坑!!!)4.3包管理工具pkg...

2019-06-02 11:21:16 372

原创 Python 错误和异常

异常Exception错误Error:又称解析错误,是可以避免的异常Exception:在没有出现上面错误的前提下,语句和语法都是正确的,本身是意外情况,异常是不可避免的In [1]: "asd" = 100 File "<ipython-input-2-2b4a41f6b880>", line 1 "asd" = 100# 这是错误 ^...

2019-05-23 20:14:46 2119

原创 Python实现经典排序算法-堆排序

堆排序(Heapsort)是指利用堆这种数据结构所设计的一种排序算法。堆是一种类似于完全二叉树的结构,并同时满足堆积的性质:即子结点的键值或者索引总是大于(小于)它的父节点。二叉树的遍历树的遍历:对树中所有元素不重复的访问一遍,也称作扫描。遍历树的方式:广度优先遍历层序遍历深度优先遍历前序遍历中序遍历后序遍历堆排序堆是一个完全二叉树每个非叶子结点都要大于...

2019-05-16 21:35:54 456

原创 正则表达式

正则表达式的基础内容就不一一罗列了,都记录在了有道云笔记上正则表达式重要点总结1.断言了解一个零宽的知识:占有字符和零宽度:如果子表达式匹配到的是字符内容,而非位置,并被保存到最终的结果中,那么就认为这个字表达式是占有字符的;如果子表达式匹配的仅仅是位置,或者匹配的内容并不保存最终的匹配结果中,那么就认为这个表达式是零宽度的。零宽断言举例rained(?=ex...

2019-05-16 20:08:40 134

原创 序列化和反序列化以及json相关

序列化和反序列化为什么要序列化内存中的字典、列表、集合以及各种对象,如何保存到一个文件中?如果是自己定义的类的实例,如何保存在一个文件中?如何从文件中读取数据,并让他们在内存中再次回复称自己对应的类的实例?要设计一套协议,按照某种规则进行转换,转换后的数据可以用来存储或者传输。文件是一个字节序列,所以必须把数据转换成字节序列(可以害死),输出到文件。这就是序列化。反之从文件的字节序列恢复...

2019-05-11 14:39:37 307

原创 ini文件和Configparser模块

ini文件 ini文件(Initialization File)全名初始化文件,是一个纯文本文件,是一个无固定标准格式的配置文件,它以简单的文字与简单的结构组成,常常使用在Windows操作系统,或是其他操作系统上,许多程序也会采用ini文件作为设置程序之用。windows操作系统后来以注册表的形式取代掉INI档。 有时候,ini文件也会以不同的扩展名,如".cfg"、".conf"或者".t...

2019-05-11 14:38:46 323

原创 csv文件处理

今天先简单的使用一些csv文件处理的一些常用方法,后面使用到numpy、pandas等模块时再补充。csv文件简介CSV文件格式的通用标准并不存在,可以参看RFC 4180逗号分隔值(Comma-Separated Values,CSV,有时也成为了字符分隔,因为分隔字符也可以不是逗号)。其文件以纯文本形式存储表格数据(数字和文本)。纯文本意味着该文件是一个字符序列,不含必须像二进制数...

2019-05-11 14:37:17 3992

原创 Python装饰器应用实例

一丶写一个命令分发器1.要求:程序员可以方便的注册函数到某一命令,用户输入命令,路由到注册的函数,如果此命令没有对应的注册函数,执行默认函数拿到这个题目,又是一脸懵逼分析:题目要求大概可以分成两个部分,注册函数,执行函数。# 注册函数def command(): functionname = {} def register(name): #注册函数 d...

2019-05-04 21:26:42 637

原创 Python中shutil模块的使用

shutil模块高级文件操作模块(High-level file operations)下面粗略的介绍他的一些常用功能一.关于copy1.copyfileobj(fsrc, fdst[, length])文件对象的复制, fsrc和fdst是open打开的文件对象,复制内容。fdst要求可写。length指定了表示buffer的大小def copyfileobj(fsrc, fdst...

2019-05-04 21:21:13 4390

原创 Python3中pathlib库的使用

简介pathlib库在python3.4以后是python的内置库, Python 文档给它的定义是 Object-oriented filesystem paths(面向对象的文件系统路径),基本上可以代替os.path来处理路径。本文相对粗略的介绍pathlib基于windows的一些常用方法,unix等详细方法参考官方文档基本使用导入主类:In [1]: from pathli...

2019-05-04 21:19:36 2125

原创 Python文件操作

文章目录一丶冯诺依曼体系架构二丶文件常用IO操作1.open打开文件2.文件指针3.read、readline、readlines4.write、writelines5.close三丶StringIO和BytesIO1.StringIO2.BytesIO3.file-like对象任何程序都需要处理输入和输出,一般说IO操作指的是文件IO,如果指的是网络IO,直接描述成网络IO一丶冯诺依曼体...

2019-05-04 21:15:10 406

原创 Python常用高阶函数map/sorted/filter/reduce

python中高阶函数的定义为:接收函数作为参数,或者把函数作为结果返回的函数就是高阶函数(higher-order function)在函数式编程范式中,最常见的高阶函数有map、filter、reduce和sorted以及他们的替代方案。下面着重使用python自定义函数来实现他们的功能,这样更有助于加深理解和记忆一丶sorted首先先来介绍个小技巧,在jupyer notebo...

2019-04-25 22:07:20 366

原创 Python利用inpect模块实现函数参数类型检查

一丶函数注解Function Annotations函数注解python3.5引入对函数的参数进行类型注解对函数的返回值进行类型注解只读函数参数做一个辅助的说明,并不对函数进行类型检查提供第三方工具,做代码分析,发现隐藏的BUG函数注解的信息保存在__annotations__属性中In [1]: def add(x: int, y: int) -> int: ...

2019-04-25 22:05:45 799

原创 Python生成器函数

一丶生成器generator生成器指的是生成器对象,可以有生成器表达式得到,也可以使用yield关键字得到一个生成器函数,调用这个函数得到一个生成器对象生成器对象,是一个可迭代对象,是一个迭代器生成器对象,是延迟计算、惰性求值的二丶生成器函数函数体中包含yield语句的函数,就是生成器函数,调用后返回生成器对象In [1]: x = (i for i in range(5))...

2019-04-22 08:57:26 782

原创 在匿名函数中绑定变量的值

1.问题我们利用lambda表达式定义了一个匿名函数,希望在函数定义的时候完成对变量名的绑定2.解决方案考虑以下的代码:In [1]: x = 10In [2]: a = lambda y : x + yIn [3]: x = 20In [4]: b = lambda y : x + yIn [5]: a(10)Out[5]: 30In [6]: b(10)Out[...

2019-04-22 08:55:48 286

原创 定义带有默认参数的函数

1.问题想定义一个函数或者方法,其中一个或者多个参数是可选的并且带有默认值2.解决方案表面上定义一个带有可选默认参数的函数时非常简单的In [1]: def func(a, b =1): ...: return a + b ...: In [2]: func(1)Out[2]: 2In [3]: func(1,2)Out[3]: 3但如果默认值时...

2019-04-22 08:54:32 2217

原创 python中a+=b真的等于a=a+b吗

今天wayne老师讲函数函数默认的作用域的时候,讲到列表+= 和 +的区别,一脸懵逼,自己遇到了知识盲区。在这里总结一下+= 和 +的区别一丶直入主题,先看示例对象是列表的情况In [1]: a = [1, 2, 3]In [2]: a += (4,)In [3]: aOut[3]: [1, 2, 3, 4]In [4]: b = [1, 2, 3]In [5]: ...

2019-04-15 08:28:45 3930

原创 深入理解Python里的字典和集合

想要理解Python里字典和集合类型的长处和弱点,他们背后的散列表是绕不开的一环理解以下几个问题Python里的dict和set的效率有多高?为什么他们是无序的?为什么并不是所有的python对象都可以当做dict和键或者set的元素?为什么dict的键和set的元素是根据他们被添加元素的次序而定的,以及为什么在映射的生命周期中,这个顺序并不是一成不变的?为什么不应该在迭代循环d...

2019-04-08 20:56:42 908

原创 Python3 bytes和bytearray

bytes、bytearrayPython3引入两个新类型:bytes:不可变类型bytearrayy:字节数组,可变一丶bytes1.bytes定义方法bytes()空bytesIn [1]: bytes()Out[1]: b''bytes(int)指定字节的bytes,被0填充In [2]: bytes(10)Out[2]: b'\x00\x00\x00...

2019-04-01 17:18:56 2212

原创 Python实现经典排序算法-选择排序

直接选择排序(Straight Select Sort)1.选择排序概述选择排序(Selection sort) 是一种简单直观的排序算法,它的工作原理是每次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完。2.基本思想n个记录的文件的直接选择排序可经过n-1趟直接选择排序得到有序结果算法分析:关键字比较次数在第i趟排序中选出最...

2019-04-01 11:26:03 240

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除