自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(41)
  • 问答 (1)
  • 收藏
  • 关注

原创 Python学习总结

背景先给大家分享一下我的学习路线:Python学习路线图Python应该是写起来最舒服的动态语言了,以下是一些读书笔记,最后会介绍一下高级的用法:Mixin、Open Class、Meta Programming和AOP。文中有些地方是用2.7开发的,如果您安装的是3.x,有几点需要注意:print "xxx" 要换成 print("xxx") __metaclass__ = t...

2019-12-27 16:04:47 163

原创 优先级运算规则

1.not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6  not 1 and 1 or 0 and 1 and 1 or 0  0 and 1 or 0 and 1 and...

2019-12-27 15:09:12 251

原创 linux--redis

redisredis在linux的安装1.redis安装方式 yum安装(提前配置好yum源) yum install redis -y # 源代码编译安装 rpm包手动安装 2.编译安装redis 创建一个文件夹,存redis(也可以不用创建) mkdir linux_redis cd l...

2019-12-27 13:21:05 154

原创 Python web在IIS上发布方法和原理

Python web应用想要发布使用iis发布有两种方式,这篇文章就为大家介绍一下这两种方式的具体实现:1.配置HttpPlatform程序HttpPlatform 模块将套接字连接直接传递到独立的 Python 进程。 借助此传递可根据需要运行任何 Web 服务器,但需要用于运行本地 Web 服务器的启动脚本。 在 web.config 的 <httpPlatform> 元素...

2019-12-27 12:30:14 555 1

原创 Python与C 、Java、C#等比较

C——>机器码——>处理器执行Python、Java、C#——>字节码——>虚拟机上执行——>机器码——>处理器执行简而言之,Python这门语言是由C开发而来Python 和 C比较 对于使用:Python的类库齐全并且使用简洁,如果要实现同样的功能,Python 10行代码可以解决,C可能就需要100行甚至更多.  对于速度:P...

2019-12-27 12:29:29 514

原创 python 实现简单的FTP

一、开发环境server端:centos 7 python-3.6.2客户端:Windows 7 python-3.6.2 pycharm-2018程序目的:1、学习使用socketserver实现并发处理多个客户端。   2、了解使用struct解决TCP粘包。二、程序设计(本人菜鸟一枚,对于开发规范,接口设计完全不懂,完全是随心所欲,自娱自乐。写博...

2019-12-27 12:25:35 207

原创 使用python实现归并排序、快速排序、堆排序

归并排序使用分治法:分而治之分:递归地拆分数组,直到它被分成两对单个元素数组为止. 然后,将这些单个元素中的每一个与它的对合并,然后将这些对与它们的对等合并,直到整个列表按照排序顺序合并为止.治:将2个排序列表合并为另一个排序列表是很简单的. 简单地通过比较每个列表的头,删除最小的,以加入新排序的列表. O(n) 操作图示:动图:实现# 合并def...

2019-12-26 18:34:15 348

原创 jupyter更换路径

初次使用anaconda中自带的jupyter,打开后默认工作路径为C:\Users\Admin(自己的用户名)需要更换工作路径更换方式如下:打开C:\Users\Admin(自己的用户名)\.jupyter -> jupyter_notebook_config.py找到#c.NotebookApp.notebook_dir = ' '并改为c.Notebo...

2019-12-26 18:33:30 578

原创 python3实现在二叉树中找出和为某一值的所有路径

在二叉树中找出和为某一值的所有路径请写一个程序创建一棵二叉树,并按照一定规则,输出二叉树根节点到叶子节点的路径。规则如下:1、从最顶端的根结点,到最下面的叶子节点,计算路径通过的所有节点的和,如果与设置的某一值的相同,那么输出这条路径上的所有节点。2、从根节点遍历树时,请请按照左到右遍历,即优先访问左子树的节点。二叉树创建规则:从上到下一层一层的,按照从左到右的顺序进行构造输入"10,...

2019-12-26 16:28:19 223

原创 Python 使用 prettytable 库打印表格(美化输出)

每次添加一行from prettytable import PrettyTable# 默认表头:Field 1、Field 2...# 添加表头table = PrettyTable(["URL", "参数", "值"])# add_row 添加一行数据table.add_row(["http://aaa.com", "raskv", "dEBxcS5j"])tab...

2019-12-26 16:27:41 2055

原创 Python单元测试浅析

测试的意义  人们针对一个具体问题,通过分析和设计,最后用编程语言写出了一个程序,如果它通过了语言解释器(编译器)的检查,可以运行了,那么下一步的工作就是设法确认它确实满足了我们需求。这篇文章就是讨论怎么确认程序是否满足用户提出的需求。满足需求,换言之就是功能正常,确认功能正常可以从以下几个方面确认:定义的函数对于所有正确的参数都能返回正确的结果 写出的程序对所有合适的输入都能产生正...

2019-12-26 13:50:07 129

原创 Python3环境搭建

第一步,从Python官方下载安装包Windows端下载地址:https://www.python.org/downloads/windows/Win端64位3.8.0安装包:https://www.python.org/ftp/python/3.8.0/python-3.8.0-amd64.exe第二步,安装Python 3.8.0 (64-bit)启动安装包python-...

2019-12-26 13:49:01 89

原创 python两个_多个字典合并相加

这只是符合比较正常的需求和场景。#一、适用合并两个字典(key不能相同否则会被覆盖),简单,好用。1 A = {'a': 11, 'b': 22}2 B = {'c': 48, 'd': 13}3 #update() 把字典B的键/值对更新到A里4 A.update(B)5 print(A)#二、适用多种场合,多字典存在相同key需要合并相加的场景比较适用。 1 de...

2019-12-26 13:47:51 426

原创 浅谈基于simhash的文本去重原理

通过本文你将了解到以下内容:信息爆炸的日常生活 网页去重和局部敏感哈希算法 simhash算法基本原理和过程分析 工程中的去重和聚类实现建议信息爆炸从2010年之后移动互联网如火如荼,笔者在2011年的时候还在用只能打电话发短信的那种手机,然而现在几乎每个人手机里的app起码有10-20款,以至于经常有种信息爆炸到头晕的感觉,回顾一下匆匆十年手机里的变化:以笔者目前正在从事...

2019-12-26 13:16:29 823

原创 空指针异常与Optional类

一、什么是空指针异常当程序需要对象实例的时候返回null就会抛出空指针异常(NullPointerException,简称NPE)。包括以下情况:调用一个null对象实例的方法 访问或修饰null对象的字段 获取数组为null时的长度 访问或修饰数组为null时的索引值 抛出Throwable对象为null时的异常虽然代码很难万无一失地避免所有NPE,但是也要尽量减少。所以一些防...

2019-12-26 12:08:26 265

原创 JavaScript 继承小记

面向对象编程很重要的一个方面,就是对象的继承。A 对象通过继承 B 对象,就能直接拥有 B 对象的所有属性和方法。这对于代码的复用是非常有用的。大部分面向对象的编程语言,都是通过“类”(class)实现对象的继承。传统上,JavaScript 语言的继承不通过 class(ES6 引入了class 语法),而是通过“原型对象”(prototype)实现。那么在JS中常见的继承方式有几种呢?...

2019-12-26 12:08:02 66

原创 python实现贝叶斯网络的概率推导(Probabilistic Inference)

这篇博客讲述的虽然全面,但细节部分,尤其是贝叶斯网络概率推导的具体实现部分,一笔带过。然而本次实验的要求就是实现贝叶斯网络的概率推导,因此我在学习完这篇博客的基础上,又把老师发的ppt学了一遍,(由于ppt是英文的,一开始我是拒绝学的),最后又挑重点看了下博客和ppt,感觉豁然开朗。因此如果没有学习过贝叶斯网络,建议按照我上面列出的顺序学习。由于ppt较大,因此这里以网盘形式给出,提取码:...

2019-12-25 22:20:59 1450 2

原创 HDFS客户端命令及java连接

一、参数设置  之前有说到HDFS的备份数量和切块大小都是可以配置的,默认是备份3,切块大小默认128M  文件的切块大小和存储的副本数量,都是由客户端决定!  所谓的由客户端决定,是通过客户端机器上面的配置参数来定  hdfs的客户端会读以下两个参数,来决定切块大小、副本数量:  切块大小的参数: dfs.blocksize  副本数量的参数: dfs.replicati...

2019-12-25 22:20:11 478

原创 flink基础之window

  flink会把数据分成不同的窗口,然后进行汇总和统计。  flink的窗口分为timeWindow, countWindow, sessionWindow, gapWindow。  timeWindow分为基于时间的滚动窗口和滑动窗口。  举个例子,统计每60秒的访问量需要的就是滚动窗口;每5分钟统计一次一个小时内的访问量或者获取访问前几的top值,这个时候就需要用到滑动窗口了。...

2019-12-25 22:19:39 189

原创 使用.NET Core创建部署Windows服务

创建首先你要确保你已经安装了.NET Core 3.0或以上版本。使用命令行创建:dotnet new worker使用Visual Studio创建中文版:英文版:创建的新项目包含两个文件。其中Program.cs文件是应用的启动程序。另外一个文件是Worker.cs文件,你可以在这个文件编写你的业务代码。这看起来应该...

2019-12-25 21:01:55 3005 1

原创 Mac上通过docker配置PHP开发环境

安装docker关于MAC上安装docker网上有很多文章介绍,这里我就不在做描述了,顺便提一句,建议使用阿里云或Daocloud提供的加速器。使用docker-compose配置开发环境一般一个基本的PHP开发环境包括PHP、PHP-FPM、WEB服务器、MySQL数据库,另外还会有Redis或memcache等相关NoSQL服务。我主要是通过docker-compose来配置服务。...

2019-12-25 21:01:18 247

原创 巧用 CSS 实现酷炫的充电动画

循序渐进,看看只使用 CSS ,可以鼓捣出什么样的充电动画效果。画个电池当然,电池充电,首先得用 CSS 画一个电池,这个不难,随便整一个:欧了,勉强就是它了。有了电池,那接下来直接充电吧。最最简单的动画,那应该是用色彩把整个电池灌满即可。方法很多,代码也很简单,直接看效果:有内味了,如果要求不高,这个勉强也就能够交差了。通过蓝色渐变表示电量,通过色块的位移动画实...

2019-12-25 19:48:23 297

原创 socketserver 模块简介

一、socketserver模块简介socketserver模块简化了网络编程,模块下有五个服务类:BaseServer、TCPServer、UDPServer、UnixStreamServer、UnixDatagramServer 。这五个类的关系如下:+------------+| BaseServer |+------------+ | v+-----...

2019-12-25 14:35:50 317

原创 linux--nginx学习

nginx1.nginx安装编译1.yum install nginx(自动解决依赖) 2.源代码编译安装(优秀,自由选择软件版本,自定义第三方功能比如开启https)3.rpm手动安装(垃圾)2.下载tengine最好别再root在操作,在opt在执行该条命令wget http://tengine.taobao.org/download/tengine-2.3.2.ta...

2019-12-25 14:33:58 195

原创 python pip 安装常用库如何使用国内镜像源

最近通过python安装一些常用库发现下载速度特别慢,而且还会出现无法安装等错误,尝试找了一些国内的镜像源,发现阿里云的速度很快,这里做个记录,并分享给大家。国内镜像源阿里云:http://mirrors.aliyun.com/pypi/simple/ (推荐使用)清华大学:https://pypi.tuna.tsinghua.edu.cn/simple豆瓣:http://p...

2019-12-25 14:33:12 515

原创 基于Graylog的容器日志监控

Docker日志当一个容器启动的时候,它其实是docker deamon的一个子进程,docker daemon可以拿到容器里面进程的标准输出,然后通过自身的LogDriver模块来处理,LogDriver支持的方式很多,默认写到本地文件,也可以发送到syslog等。Docker会默认收集应用程序的标准输出到一个json.log文件中,以一行一条JSON存储数据,文件的格式如下:...

2019-12-24 23:23:29 95

原创 Axios请求头中常见的几种Content-Type

  Vue2.0之后,官方不再继续维护vue-resource,尤雨溪大大推荐使用Axios用来替代Ajax。  Axios请求头中的Content-Type常见的有3种:    1.Content-Type:application/json    2.Content-Type:application/x-www-form-urlencoded    3.Content-Type:...

2019-12-24 23:22:52 1087

原创 Centos7 格式化分区并挂载

Linux 经常可以遇到添加硬盘或者重新挂载分区等情况,本文简单记录挂载新分区的情况。由于磁盘分区之前已经处理过,本次从格式化分区及后续的挂载等步骤开始记录。1. 查看当前磁盘情况[root@pgtest59 ~]# df -lh 文件系统 容量 已用 可用 已用% 挂载点/dev/sdb3 50G 994M 50G 2% /devtmp...

2019-12-24 20:13:26 306

原创 AWS EC2 搭建 Hadoop 和 Spark 集群

前言本篇演示如何使用 AWS EC2 云服务搭建集群。当然在只有一台计算机的情况下搭建完全分布式集群,还有另外几种方法:一种是本地搭建多台虚拟机,好处是免费易操控,坏处是虚拟机对宿主机配置要求较高,我就一台普通的笔记本,开两三个虚拟机实在承受不起; 另一种方案是使用 AWS EMR ,是亚马逊专门设计的集群平台,能快速启动集群,且具有较高的灵活性和扩展性,能方便地增加机器。然而其缺点是只能使用...

2019-12-24 20:12:50 787 1

原创 如何将你的项目完美迁移到Python3?

Python 2.x 很快就要失去官方支持了,不过不用慌,从 Python 2 迁移到 Python 3 却并没有想象中那么难。我在上周用了一个晚上的时间将一个 3D 渲染器的前端代码及其对应的 PySide迁移到 Python 3,回想起来,尽管在迁移过程中无可避免地会遇到一些牵一发而动全身的修改,但整个过程相比起痛苦的重构来说简直是出奇地简单。 每个人都别无...

2019-12-24 19:50:21 126

原创 Python隐藏特性:字符串驻留、常量折叠

下面是Python字符串的一些微妙的特性,绝对会让你大吃一惊。 案例一: >>> a = "some_string">>> id(a)140420665652016>>> id("some" + "_" + "string") # 注意两个的id值是相同的.14042066565201...

2019-12-24 19:48:50 95

原创 Flask-sqlalchemy-表关系

表关系 表之间的关系存在三种: 一对一、一对多、多对多。 而SQLAlchemy中的ORM也可以模拟这三种关系。因为一对一其实在SQLAlchemy中底层是通过一对多的方式模拟的, 所以先来看下一对多的关系 ForeignKey #-*-coding:utf-8-*- fromsqlalchemy....

2019-12-24 19:48:12 175

原创 关于换行以及换行属性

对于CSS的white-space属性,我想大部分人应该和我差不多,最常用的就是nowrap属性,最多用来做超长省略号显示的时候会用到【hiahiahia~】起因是这样的:产品doggie策划了一个元旦活动,活动主页最下边需要显示配置的活动规则,注意,是配置的活动规则,所以,免不了运营小妹要在后台配置一个活动规则,肯定不指望她们能配置html文本的呀,对吧,于是她们配置的是这样的: ...

2019-12-24 13:17:10 185

原创 Okhttp源码分析--基本使用流程分析

Okhttp源码分析--基本使用流程分析一、 使用同步请求 OkHttpClient okHttpClient=new OkHttpClient(); Request request=new Request.Builder() .get() .url("www.baidu.com") .build(); Call ...

2019-12-24 13:16:12 144

原创 NAT-地址转换技术的配置

(一)NAT的概念及工作原理  简单来讲,nat就是将私有网址转化为共有网址的技术。NAT通常部署在一个组织的网络出口位置,成为NAT网关。举个栗子,一段报文想离开私网,必须经过NAT网关将数据传输给公网Internet,通过nat实现源IP地址映射为公网IP地址,Internet发现该IP实际是私有IP,就将请求的服务实现,并通过网关回传给源IP。这样一次由私网主机向公网服务端的请求和响应就...

2019-12-23 21:14:17 492

原创 javascript DOM和DOM操作的四种基本方法

在了解了javascript的语言特性后,javascript真正大放光彩的地方来了——这就是javascript DOMJavascript DOMDOM(Document Object Model),文档对象模型。简单的说就是一套操作文档内容的方法。文档:DOM的D如果没有document(文档),DOM就无从谈起。当创建了一个网页并把它加载到web浏览器...

2019-12-23 19:34:03 197

原创 TiKV事务实现浅析

Percolator事务的理论基础Percolator的来源Percolator事务来源于Google在设计更新网页索引的系统时提出的论文Large-scale Incremental Processing Using Distributed Transactions and Notifications中,Google用它在支持单行事务的分布式数据库Bigtable的基础上实现跨节点的分布...

2019-12-23 19:33:20 511

原创 IdentityServer4学习笔记汇总(实现传送门在底部)

前言互联网时代,对信息和资源的保护越发苛刻,在所有应用中授权和认证是必不可少缺少的一部分。如果一个应用没有授权和认证那么这个应用就是不完整或者说不安全的应用。在.Net平台给我们提供了一套完整的授权认证框架,那就是IdentityServer4。它实现了OpenId Connect和OAuth2.0协议的认证授权。授权认证很多人喜欢把授权和认证混为一谈,但是其实授权(Authoriza...

2019-12-23 18:53:26 133 1

原创 不一样的适配器模式(设计模式三)

前言适配器模式,是一个看起来简单的模式,同时也是最复杂的模式。查看适配器的作用,直接查看它的演化,也许更为容易理解。开车出发适配器大概分为两类,一类为类适配器,另一类为对象适配器。//新接口public interface ITarget { void Process();}//旧接口public interface Iadapter{ void do...

2019-12-23 18:52:38 92

原创 NIO-FileChannel源码分析

前言本来是想学习Netty的,但是Netty是一个NIO框架,因此在学习netty之前,还是先梳理一下NIO的知识。通过剖析源码理解NIO的设计原理。本系列文章针对的是JDK1.8.0.161的源码。上一篇对SocketChannel的源码进行了分析,本篇继续对FileChannel的源码进行解析。RandomAccessFile我们可以通过使用RandomAccessFi...

2019-12-23 16:01:03 93

空空如也

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

TA关注的人

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