自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

松鼠豪的坚果

代码似坚果,坚果似初恋。

  • 博客(35)
  • 收藏
  • 关注

转载 jupyter notebook 报错的坑【The kernel has died, and the automatic restart has failed.】

问题点打开jupyter notebook遇到的问题表现:遇到这个问题,首先需要分析报错信息,不要听信网上一面之词,对解决方法无益处。[I 11:49:06.081 NotebookApp] KernelRestarter: restarting kernel (4/5), new random portskernel a67705c9-a10f-4e18-9190-03e253b68...

2018-09-30 16:52:15 16827 4

转载 Python format 格式化函数

Python2.6 开始,新增了一种格式化字符串的函数 str.format(),它增强了字符串格式化的功能。基本语法是通过 {} 和 : 来代替以前的 % 。format 函数可以接受不限个参数,位置可以不按顺序。实例>>>"{} {}".format("hello", "world") # 不设置指定位置,按默认顺序 'hello world'>&g...

2018-09-27 11:29:44 251

转载 Python 字典

字典的定义 dictionary (字典)是除列表以外 Python之中最灵活的数据类型 ,字典同样可以⽤来存储多个数据 ,通常⽤于存储描述⼀个物体的相关信息 ,字典⽤ { } 定义 。字典使⽤ 键值对 存储数据,键值对之间使⽤ , 分隔: 键 key 是索引 值 value 是数据 键 和 值 之间使⽤ : 分隔 值可以取任何数据类型,但键只能使⽤字符串、...

2018-09-25 23:40:38 470

转载 两句话掌握 Python 最难知识点——元类

学懂元类,只需要知道两句话:道生一,一生二,二生三,三生万物 我是谁?我从哪来里?我要到哪里去? 在python世界,拥有一个永恒的道,那就是“type”,请记在脑海中,type就是道。如此广袤无垠的python生态圈,都是由type产生出来的。道即是 type 一即是 metaclass(元类,或者叫类生成器) 二即是 class(类,或者叫实例生成...

2018-09-20 20:48:00 791 4

转载 单向链表、单向循环链表

目录1 单向链表结构分析2 节点实现3 单链表的操作4 单链表的实现4.1 头部添加元素4.2尾部添加元素4.3 指定位置添加元素4.4 删除节点4.5 查找节点是否存在4.6 测试5 链表与顺序表的对比6 单向循环链表1 单向链表结构分析单向链表也叫单链表,是链表中最简单的一种形式,它的每个节点包含两个域,一个信息域(元素域)和一个...

2018-09-19 17:11:04 613

转载 Python内置性能分析----timeit模块

timeit模块timeit模块可以用来测试一小段Python代码的执行速度。class timeit.Timer(stmt='pass', setup='pass', timer=<timer function>) Timer是测量小段代码执行速度的类。 stmt参数是要测试的代码语句(statment); setup参数是运行代码时需要的设置; ...

2018-09-19 16:45:18 247

原创 Python 元组

元组的定义 python元组与列表类似,不同之处在于元组的元素不可更改。元组⽤ () 定义 ,⽤于存储 ⼀串数据,元素 之间使⽤ , 分隔 。元组的索引 从 0 开始 。# 定义元组info_tuple = ("Scrat", 18, 1.75)# 取出元素的值print(info_tuple[0]) # 输出:Scrat元组中 只包含⼀个元素 时,需要 ...

2018-09-19 11:26:20 492

转载 Python 字符串

字符串的定义 字符串 就是⼀串字符,是编程语⾔中表示⽂本的数据类型,在 Python 中可以使⽤ ⼀对双引号 " 或者 ⼀对单引号 ' 定义⼀个字符串 虽然可以使⽤ \" 或者 \' 做字符串的转义,但是在实际开发中: 如果字符串内部需要使⽤ " ,可以使⽤ ' 定义字符串 如果字符串内部需要使⽤ ' ,可以使⽤ " 定义字符串 可以使⽤ 索引 获取⼀个字符串中...

2018-09-19 11:21:41 732

转载 Python 列表

列表的定义 List (列表)是Python中使⽤最频繁的数据类型 ,专⻔⽤于存储⼀串数据,存储的数据称为 元素 列表⽤ [ ] 定义,元素 之间使⽤ , 分隔 列表的 索引 从 0 开始 索引 就是元素在 列表 中的位置编号 name_list = ["zhangsan", "lisi", "wangwu"] # 取出列表中元素的值print(name_list[1])...

2018-09-19 11:11:36 559

原创 self,cls 与 staticmethod,classmethod

一、总体说明Python类的方法有三种(self和cls都可以用别的单词代替):一是通过def定义的 , 普通的一般的,需要至少传递一个参数,一般用self,这样的方法必须通过一个类的实例去访问,类似于c++中通过对象去访问; 二是在def前面加上@classmethod,这种类方法的一个特点就是可以通过类名去调用,但是也必须传递一个参数,一般用cls表示class,表示可以通过类直接...

2018-09-18 21:53:26 397

转载 Python 魔法方法详解

什么是Python魔法方法魔法方法就如同它的名字一样神奇,总能在你需要的时候为你提供某种方法来让你的想法实现。魔法方法是指Python内部已经包含的,被双下划线所包围的方法,这些方法在进行特定的操作时会自动被调用,它们是Python面向对象下智慧的结晶。初学者掌握Python的魔法方法也就变得尤为重要了。为什么要使用Python魔法方法使用Python的魔法方法可以使Pyth...

2018-09-18 21:18:52 567

转载 数据挖掘领域的十大经典算法

国际权威的学术组织the IEEE International Conference on Data Mining (ICDM) 2006年12月评选出了数据挖掘领域的十大经典算法:C4.5, k-Means, SVM, Apriori, EM, PageRank, AdaBoost, kNN, Naive Bayes, and CART.不仅仅是选中的十大算法,其实参加评选的18种算法,实际...

2018-09-17 23:29:48 244

转载 vim

一、编辑器之神-----vim编辑器vi vs vimvi 编辑器是Unix及linux系统下标准的编辑器,类似Windows下的notepad(记事本)编辑器。由于Unix及linux任何版本,vi编辑器是完全相同的。因此可以在其他任何介绍vi的地方进一步了解它。vi是linux最基本的文本编辑器,学会后将在linux世界畅行无阻,尤其是在终端中。vim 是vi的高级版本,vim更...

2018-09-15 20:10:51 165

转载 帧、报文、报文段、分组、包、数据报概念区分

应用层———消息传输层———数据段(segment)网络层———-分组、数据包(packet)链路层———-帧物理层———-PDU(bit比特)1、报文报文是网络中交换和传输的数据单元,也是网络传输的单元。报文包含了将要发送的完整的数据信息,其长短不需一致。报文在传输过程中会不断地封装成分组、包、帧来传输,封装的方式就是添加一些控制信息组成的首部,那就是报文头。2、分组分组是在网络中传输的...

2018-09-15 14:10:34 2220

转载 MySQL分页

第一部分:看一下分页的基本原理:mysql explain SELECT * FROM message ORDER BY id DESC LIMIT 10000, 20***************** 1. row **************id: 1select_type: SIMPLEtable: messagetype: indexpossible_keys: NULL...

2018-09-14 21:13:00 184

转载 慢查询及其成因与处理方法

一、什么是慢查询?分析MySQL语句查询性能的方法除了使用 EXPLAIN 输出执行计划,还可以让MySQL记录下查询超过指定时间long_query_time参数的语句,我们将超过指定时间的SQL语句查询称为“慢查询”。慢查询日志:记录这些超时SQL的日志。二、记录慢查询的方法:查看/设置“慢查询”的时间定义 1 2 3 4 5...

2018-09-14 20:41:41 1655

转载 Redis与RabbitMQ作为消息队列的比较

本文仅针对RabbitMQ与Redis做队列应用时的情况进行对比具体采用什么方式实现,还需要取决于系统的实际需求 简要介绍 RabbitMQRabbitMQ是实现AMQP(高级消息队列协议)的消息中间件的一种,最初起源于金融系统,用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗。消息中间件主要用于组件之间的解耦,消息的发送者无需知道消息使用者的存在,反之...

2018-09-14 17:08:09 252

转载 消息中间件之RabbitMQ

市面上的消息队列产品有很多,如老牌的 ActiveMQ、RabbitMQ ,目前我看最火的 Kafka ,还有 ZeroMQ ,去年底阿里巴巴捐赠给 Apache 的 RocketMQ ,连redis 这样的 NoSQL 数据库也支持 MQ 功能。总之这块知名的产品就有十几种,本文讲一下RabbitMQ。消息中间件消息(Message)是指在应用间传送的数据。消息可以非常简单,比如只...

2018-09-14 17:05:04 249

转载 MySQL索引原理以及查询优化

一、介绍由来: 一般的应用系统,读写比例在10:1左右,插入操作和一般的更新操作很少出现性能问题,在生产环境中,我们遇到最多的,也是最容易出问题的,还是一些复杂的查询操作,因此对查询语句的优化显然是重中之重。说起加速查询,就不得不提到索引了。 索引对于良好的性能非常关键,尤其是当表中的数据量越来越大时,索引对于性能的影响愈发重要。 索引优化应该是...

2018-09-10 10:34:07 270

转载 Nginx反向代理及负载均衡搭建

关于负载均衡(传送门)scrat的另一篇文章,本篇讲解nginx反向代理方式实现负载均衡。1.Nginx简介Nginx是一款高性能的http 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。由俄罗斯的程序设计师Igor Sysoev所开发,官方测试nginx能够支支撑5万并发链接,并且cpu、内存等资源消耗却非常低,运行非常稳定。Nginx的目录结构[roo...

2018-09-08 15:53:46 380

转载 Python Web 框架:Django、Flask 与 Tornado 的性能对比

写在前面:本文的数据涉及到我面试时遇到过的问题,大概一次 http 请求到收到响应需要多少时间。这个问题在实际工作中与框架有比较大的关系,因此特别就框架的性能做了一次分析。什么是web框架?Web框架(Web framework)是一种开发工具,用来支持动态网站、网络应用和网络服务的开发。大多数的web框架提供了一套开发和部署网站的方式,也为web行为提供了一套通用的方法。web框...

2018-09-08 09:26:08 3275

转载 第三方登录----OAuth与OpenID

现在很多网站都可以用第三方的账号登陆,比如,现在我要登录淘宝买东西,而如果我没有淘宝的账号,我也可以用微博的账号登录,这个微博账号就是第三方账号了。这个三方登录的实现主要包含OpenID和OAuth技术。OpenID强调验证 authentication,验证就是说“我”是不是(微博用户) OAuth强调授权 authorization。,授权是说“淘宝”可不可以用我的微博账号,而可不可...

2018-09-07 20:48:03 1626

转载 使用python实现后台系统的JWT认证

作者:茶客furu声今天的文章介绍一种适用于restful+json的API认证方法,这个方法是基于jwt,并且加入了一些从oauth2.0借鉴的改良。1. 常见的几种实现认证的方法首先要明白,认证和鉴权是不同的。认证是判定用户的合法性,鉴权是判定用户的权限级别是否可执行后续操作。这里所讲的仅含认证。认证有几种方法: 1.1 basic auth这是http协议中所带带基本...

2018-09-07 19:46:20 1154

转载 eval与json.loads对json的处理小记

JSON有两种结构:“名称/值”对的集合(A collection of name/value pairs)。不同的语言中,它被理解为对象(object),纪录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组 (associative array)。 值的有序列表(An ordered lis...

2018-09-07 19:19:46 268

转载 密码学中的“盐值 Salt”

原文链接:http://www.libuchao.com/2013/07/05/password-salt 为什么要在密码里加点“盐”盐(Salt)在密码学中,是指通过在密码任意固定位置插入特定的字符串,让散列后的结果和使用原始密码的散列结果不相符,这种过程称之为“加盐”。以上这句话是维基百科上对于 Salt 的定义,但是仅凭这句话还是很难理解什么叫 Salt,以及它究竟起...

2018-09-07 17:26:03 671

转载 如何理解Nginx, WSGI, Flask之间的关系

之前对 Nginx,WSGI(或者 uWSGI,uwsgi),Flask(或者 Django),这几者的关系一存存在疑惑。通过查阅了些资料,总算把它们的关系理清了。 总括来说,客户端从发送一个 HTTP 请求到 Flask 处理请求,分别经过了 web服务器层,WSGI层,web框架层,这三个层次。不同的层次其作用也不同,下面简要介绍各层的作用。web服务器,web框架与 WS...

2018-09-06 22:13:44 196

原创 Python 9.回文数

 回文数Python实现class Solution(object): def isPalindrome(self, x): """ :type x: int :rtype: bool """ temp = str(x)[::-1] if(temp == str(x)): ...

2018-09-05 22:06:25 273

原创 7. 反转整数

Python实现:class Solution(object): def reverse(self, x): """ :type x: int :rtype: int """ i = 0 str1=str(x) stack = [] fu = False ...

2018-09-05 21:13:57 135

转载 哈希加密算法 MD5,SHA-1,SHA-2,SHA-256,SHA-512,SHA-3,RIPEMD-160

一、MD5哈希加密算法 MD5即Message-Digest Algorithm 5(信息-摘要算法 5),用于确保信息传输完整一致。是计算机广泛使用的散列算法之一(又译摘要算法、哈希算法),主流编程语言普遍已有MD5实现。 将数据(如汉字)运算为另一固定长度值,是散列算法的基础原理,MD5的前身有MD2、MD3和MD4。MD5一度被广泛应用于安全领域。但是由于MD5的弱点被不断发现以及...

2018-09-05 19:05:33 3374

转载 数据表设计思想,ER图及三范式。

数据表设计思想设计流程需求分析:根据用户的需求,分析出需要记录的数据需求设计:根据分析出的数据,设计E-R模型图详细设计:将E-R模型图转换成数据表三大范式:使用数据库三大范式的设计思想对数据表进行审核E-R模型图概念:Entity-Relationship,实体关系图组成元素:举例,将下面三张表用E-R模型图表示出来三大范式概念:三大...

2018-09-04 16:04:23 15279 1

原创 使用pymysql对数据进行增删改查

什么是 PyMySQL?PyMySQL 是在 Python3.x 版本中用于连接 MySQL 服务器的一个库,Python2中则使用mysqldb。PyMySQL 遵循 Python 数据库 API v2.0 规范,并包含了 pure-Python MySQL 客户端库。1、安装pymysql pip3 install PyMySQL2、pymysql执行流程3、引入...

2018-09-04 15:53:59 2990

原创 MySQL之视图、事务

视图问题:如果我有一个很复杂的sql语句,但是我还会经常使用该怎么办?概念:视图是一个虚拟表。 视图同样跟真实表一样包含行和列,但是视图没有在数据库中真实的存储数据 视图中行和列的数据都来自于其引用的真实表中行和列的数据好处:安全性 方便操作,减少编写复杂的重复的sql语句 易于扩展例:a表、b表删除,使用c表定义视图:create view 视图名称 ...

2018-09-04 15:38:58 222

原创 数据结构之栈

栈:stack 一组元素组成的线性序列,只允许在一端栈顶(进出口)进行加入和输出数据,栈底(不可操作)。特性:LIFO: 后进先出。栈的应用:逆序输出:进制转换 括号匹配:‘(’消去一对紧邻的左右括号,不影响全局的匹配判断。 左括号入栈,遇到右括号,匹配的话出栈。栈可以考虑多种不同的括号(方括号,圆括号) 栈混洗:按照某种规则,对栈中的元素进行排列。需要中转栈。(所有可能的出...

2018-09-03 16:31:21 190

转载 动态规划、迭代与递归

递归:好像相对高明,但其实效率而言递归并不是最佳方案。。迭代:貌似复杂,其实性能更高效。 分而治之DSA动态规划所谓动态规划:就是通过递归,找出问题本质,并且给出一个初步的解之后,再将其等效的转换为迭代的形式。make it work make it right make it fast两个栗子:1. 斐波那契数列(青蛙跳台阶):解决方法A:(记忆:memoi...

2018-09-02 15:43:54 597

转载 linux学习笔记-------常见命令

linux命令语法格式# 指令 【选项】【操作对象】一个指令可以包含多个选项,操作的对象也可以是多个。一、基础指令ls 列表清单,列出当前工作目录下所有文件及文件夹的名称 ls -l 列表形式显示 ls -a 显示所有,以及隐藏文件上列表中第一列字符表示文档类型,其中‘-‘表示对应的文档类型为文件,‘d'表示文档类型为文件夹ls -lh 列出所有文件、...

2018-09-01 20:17:55 611

空空如也

空空如也

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

TA关注的人

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