自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

MARATRIX BLOG

不期速成,日拱一卒

原创 Go Hijack黑科技

最近在看Go标准库里面的rpc源码,发现了下面一段代码: // ServeHTTP implements an http.Handler that answers RPC requests. func (server *Server) ServeHTTP(w http.ResponseWriter...

2020-02-17 15:35:50

阅读数 392

评论数 0

原创 Nginx平滑的基于权重的轮询算法实现

Nginx平滑的基于权重轮询算法描述为: Algorithm is as follows: on each peer selection we increase current_weight of each eligible peer by its weight, select peer wit...

2020-02-09 09:54:58

阅读数 207

评论数 0

原创 Rust学习笔记007-所有权

什么是所有权 Rust的核心功能(之一)就是所有权,其令 Rust 无需垃圾回收即可保障内存安全。 所有运行的程序都必须管理其使用计算机内存的方式: 一些语言中具有垃圾回收机制,在程序运行时不断地寻找不再使用的内存; 在另一些语言中,程序员必须亲自分配和释放内存。 Rust 则选择了第三种方式:...

2020-02-06 11:08:35

阅读数 50

评论数 0

原创 Rust学习笔记006-控制流

if表达式 Rust的if...else if ... else基本语法和大多编程语言类似,这里不再赘述。 if 条件 { //... } else if 条件 { //... } else { //... } 注意,这里的条件表达式不包含()括号,直接写表达式即可: let number...

2020-02-05 16:52:35

阅读数 31

评论数 0

原创 Rust学习笔记005-函数

函数定义 使用fn关键字定义函数; 函数名使用snake_case规范命名; 函数可以定义在main函数之前或之后,Rust 不关心函数定义于何处; fn test_function(a: i32, b: bool) -> u32 { //... } 函数参数 函数可以定义多个参数...

2020-02-05 13:09:03

阅读数 32

评论数 0

原创 Rust学习笔记004-数据类型

Rust是静态类型语言,在编译时就必须知道所有变量的类型。 两种方式确定类型: 根据值及其使用方式,编译器通常可以推断出我们想要用的类型。当多种类型均有可能时,比如第二章的 “比较猜测的数字和秘密数字” 使用 parse 将 String 转换为数字时,必须增加类型注解, ...

2020-02-05 10:35:58

阅读数 39

评论数 0

原创 Rust学习笔记003-变量与可变性

变量声明 语法格式: let 变量名: 变量类型 = 变量值; let var: i32 = 123; 有几点要注意: 以关键字let开头,类型一定跟在冒号:后面; 变量必须先声明,初始化后才能使用; 可变性 Rust中变量默认是不可变的,比如下面运行会报错: let x: i32 = 12...

2020-02-04 18:36:20

阅读数 29

评论数 0

原创 Rust学习笔记002-编程概念

标识符 Rust 中的名称被称为 “标识符”(“identifier”),它们可以是任意非空的 ASCII 字符串,不过有如下限制: 要么是: 第一个字符是字母。 其它字符是字母数字或者 _。 或者是: 第一个字符是 _。 标识符需多于一个字符。单独的_不是标识符。 其它字符是字母数字或者 _。...

2020-02-04 18:32:46

阅读数 18

评论数 0

原创 Rust学习笔记001-初相识

Rust is a systems programming language that runs blazingly fast, prevents segfaults, and guarantees thread safety. Rust是一门系统级编程语言,具有三个特点: 运行快 防止段错误...

2020-02-04 18:30:42

阅读数 82

评论数 0

原创 Rust学习笔记000-安装

今天正式开始学Rust。 安装 学习一门新语言,第一件事当然是先安装。官方推荐使用rustup工具来管理安装,并提供一键安装命令,只需要在终端执行以下命令即可: curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs ...

2020-02-03 22:17:53

阅读数 18

评论数 0

原创 Python 学习笔记20-错误和异常

语法错误 Python 的语法错误或者称之为解析错: >>> if True print(123) File "<stdin>", line...

2018-07-22 10:08:30

阅读数 65

评论数 0

原创 Python学习笔记19-文件读写

读文件 使用内置的 open 函数打开文件: f = open('./data.txt', 'r') 如果文件不存在,open() 函数就会抛出一个 IOError 的错误,并且给出错误码和详细的信息告诉你文件不存在: >&am...

2018-07-21 08:48:48

阅读数 81

评论数 0

原创 Python 学习笔记18-模块

什么是模块 在 Python 中,一个 .py 文件就是一个模块module。 使用模块有什么好处? - 最大的好处是大大提高了代码的可维护性。 - 其次,编写代码不必从零开始。当一个模块编写完毕,就可以被其他地方引用。 - 使用模块还可以避免函数名和变量名冲突。 举个例子,一个abc...

2018-07-19 08:58:25

阅读数 86

评论数 0

原创 Python 学习笔记17-偏函数

Python 的functools模块提供了很多有用的功能,其中一个就是偏函数(Partial function)。 在介绍函数参数的时候,我们讲到,通过设定参数的默认值,可以降低函数调用的难度。而偏函数也可以做到这一点。 int() 函数可以把字符串转换为整数,当仅传入字符串时,int() ...

2018-07-19 08:57:56

阅读数 75

评论数 0

原创 Python 学习笔记16-装饰器

TODO

2018-07-19 08:57:25

阅读数 51

评论数 0

原创 Python 学习笔记15-lambda

在 Python 中,我们使用 lambda表达式 来表示匿名函数。 Python 对匿名函数提供了有限支持。 >>> list(map(lambda x:x**2, range(1, 11))) [1, 4, 9, 16, 25, 36, 49,...

2018-07-19 08:56:56

阅读数 49

评论数 0

原创 Python 学习笔记14-高阶函数

变量指向函数 函数本身可以赋值给变量,即变量可以指向函数。 >>> f = abs >>> f <built-in function abs> >>&...

2018-07-19 08:56:32

阅读数 59

评论数 0

原创 Python学习笔记13-生成器与迭代器

生成器 当我们需要产生很大的一个列表时候如果使用列表生成式,会占用比较大的内存空间,这时我们一种能够边循环边计算的机制来不断推断后续的元素,我们成为生成器。 第一种形式 只要把一个列表生成式的[]改成(),就创建了一个生成器: >>> it...

2018-07-13 11:15:42

阅读数 41

评论数 0

原创 Python学习笔记12-列表生成式

列表推导式提供了从序列创建列表的简单途径。通常应用程序将一些操作应用于某个序列的每个元素,用其获得的结果作为生成新列表的元素,或者根据确定的判定条件创建子序列。 如果要生成类似 [1*1, 2*2, 3*3...n*n] 这样的列表,该如何做? 笨方法当然可以利用for循环来实现了,但是太繁琐...

2018-07-12 09:06:01

阅读数 68

评论数 0

原创 Python学习笔记11-切片与迭代

list 切片 取一个 list 或者 tuple 的部分元素是很常见的操作,笨方法如下: l = list(range(10)) print([l[0], l[1], l[2]]) 输出: [0, 1, 2] python 提供了切片操作符,大大简化了这种操作: L = list...

2018-07-12 09:05:21

阅读数 70

评论数 0

原创 Python学习笔记10-函数

函数定义 函数代码块以 def 开头,后接函数标识符名称和圆括号 () 圆括号之间用于定义参数 函数的第一行代码可以选择性地使用文档字符串来存放函数说明 函数内容以冒号 : 开始,并且缩进 return 表达式结束函数,不带表达式的 return 或者没有 return 相当于返回 None ...

2018-07-11 09:11:31

阅读数 55

评论数 0

原创 Python学习笔记09-条件语句与循环

条件语句 python 中使用 if-elif-else 条件语句来执行代码块。 注意: - 每个条件后面使用:来表示满足条件后执行的代码块。 - 使用缩进来划分语句块,相同缩进的语句一起组成一个语句块。 - python 中没有 switch-case 语句。 >&...

2018-07-09 09:30:42

阅读数 61

评论数 0

原创 Python学习笔记08-集合

什么是集合 集合 set 是一个无序不重复元素的序列。 set 和 dict 类似,也是一组 key 的集合,但不存储 value。由于 key 不能重复,所以,在 set 中,没有重复的 key。 在 python 中,使用大括号 {} 或者 set() 来创建集合。 注意: 创建一个空...

2018-07-09 08:43:30

阅读数 58

评论数 0

原创 Python学习笔记07-字典

什么是字典 Python 内置了字典 dict 的支持,可以存储任意类型对象,在其他语言中也称为 map,使用键 - 值(key-value)对存储,具有极快的查找速度。 字典的每个键值对使用冒号:分割,每个对之间使用逗号,分割,整个字典包括在花括号{}里面: dd = {'n...

2018-07-06 15:10:39

阅读数 65

评论数 0

原创 Python学习笔记06-元组

什么是元组 另一种有序列表叫做元组tuple。 tuple 和 list 很相似,但是 tuple 一旦创建就不能再修改。 元组使用小括号(),列表使用中括号[]。 元组和列表共同特性: 索引:使用方括号 [] 进行索引访问,如 seq[0] 切片:使用方括号 [:] 进行切片,如...

2018-07-06 15:09:54

阅读数 58

评论数 0

原创 Python学习笔记05-列表

Python 包含 6 种内建的序列,即: 列表 元组 字符串 unicode 字符串 buffer 对象 xrange 对象 序列都可以进行以下通用的操作: 索引:使用方括号[ ] 进行索引访问,如 seq[0] 切片:使用方括号 [:] 进行切片,如:seq[2:7] 加...

2018-07-06 15:09:09

阅读数 51

评论数 0

原创 Python学习笔记04-字符串连接总结

在 Python 中字符串连接有多种方式,这里简单做个总结,应该是比较全面的了,方便以后查阅。 加号连接 第一种,通过+号的形式: >>> a, b = 'hello', ' world&...

2018-07-06 15:06:45

阅读数 98

评论数 1

原创 Python学习笔记03-数据类型与变量

数据类型 计算机顾名思义就是可以做数学计算的机器,因此,计算机程序理所当然地可以处理各种数值。但是,计算机能处理的远不止数值,还可以处理文本、图形、音频、视频、网页等各种各样的数据,不同的数据,需要定义不同的数据类型。在 Python 中,能够直接处理的数据类型有以下几种: 整型 在 p...

2018-07-06 15:04:49

阅读数 75

评论数 0

原创 Python学习笔记02-运算符

什么是运算符 举个简单的例子 4 +5 = 9 。 例子中,4 和 5 被称为操作数,”+” 称为运算符。 Python 语言支持以下类型的运算符: - 算术运算符 - 比较(关系)运算符 - 赋值运算符 - 逻辑运算符 - 位运算符 - 成员运算符 - 身份运算符 - 运算符...

2018-07-06 15:01:35

阅读数 74

评论数 0

原创 Python学习笔记01-基本语法

编码 默认情况下,python3 源码文件是以 utf-8 编码的,所有的字符串都是 unicode 字符串,当然也可以指定不同的编码 # -*- coding:utf-8 -*- 或者 # coding=utf-8 或者 # coding:utf-8 或者 # vim: set file...

2018-07-06 14:58:23

阅读数 166

评论数 0

原创 如何解决浏览器无法打开网页问题

今天下午,在公司安装一个小的工具软件后,出现了浏览器无法打开网页的问题,然后试了下我本机安装的所有浏览器发现都不能正常打开网页了,尝试了很多方法都无法解决,最后怒卸chrom浏览器然后重新安装以期望能够解决,令人失望的是还是无法正常访问,最终放弃了。 晚上回家后,心里还是很不爽,总想着把这个...

2015-07-03 22:38:56

阅读数 2117

评论数 0

原创 php如何输出中文json格式字符串

如何对json格式的字符串进行转换,php提供了两个函数: json_encode 对变量进行 JSON 编码 json_decode 对 JSON 格式的字符串进行编码 下面看个实例: $arr = ['a', 'b', 'c...

2015-07-03 22:35:07

阅读数 2339

评论数 0

原创 Kindle爱之初

自入手kindle差不多已经一个月了,这将近一个月的阅读体验确实本人感概良多,发现自己更爱读书了,也逐渐喜欢上和离不开 kindle了(推荐给喜欢阅读的小伙伴们~)。其实,早就有写一篇博客来记录这段时间的kindle初体验的想法了,奈何拖延综合症根深蒂固,自己无法自拔。今日早醒,神经恍惚,突然意识...

2015-02-07 18:09:10

阅读数 663

评论数 0

原创 Vim使用技巧の快速加密

我们知道对于Linux服务器来说是支持多用户多任务环境的,聪明的Linux同学给我们每个用户都有各自的权限,彼此工作互不干扰。但是环境中有一个Super man存在呢,谁拥有它的权限就可以'偷窥'别人隐私了,真是不讲理。那么问题来了,我既没有super man权限,又不想给su...

2014-12-30 16:33:05

阅读数 519

评论数 0

原创 对数据库取出的数据进行递归过滤

首先,介绍个很有用的函数htmlspecialchars(),相信大家都不陌生吧,没错,zh

2014-05-14 20:25:20

阅读数 988

评论数 0

原创 PHP中延迟静态绑定机制

学习PHP时,我们都知道静态方法,静态方法可以用作工厂方法,xage

2014-05-11 22:38:47

阅读数 675

评论数 0

原创 浅谈PHP中自动加载类库机制

在php开发过程中

2014-05-10 13:10:18

阅读数 1971

评论数 0

原创 Ubuntu下面adduser和useradd创建用户命令的一点总结

大家都知道,在ubuntu中创建用户有两个hao

2014-05-09 20:54:41

阅读数 3286

评论数 0

转载 批判的价值

作者:王垠 网址:

2014-05-06 11:18:58

阅读数 536

评论数 0

原创 部署UEditor编辑器

1、到官网下载UEditor最新版,链接:http://ueditor.baidu.com/website/download.html 2、解压缩后de

2014-04-27 18:26:46

阅读数 513

评论数 0

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