架构之:微服务架构漫谈

2021-06-29
阅读 3 分钟
2k
微服务的架构出现已经很久很久了,微服务架构就是一种将单个应用程序转换为一组小服务的方法,每个小服务都在自己的进程中运行,并使用轻量级的交互方式(如HTTP)进行通信。

Pandas高级教程之:category数据类型

2021-06-28
阅读 9 分钟
5.1k
Pandas中有一种特殊的数据类型叫做category。它表示的是一个类别,一般用在统计分类中,比如性别,血型,分类,级别等等。有点像java中的enum。

Pandas高级教程之:处理缺失数据

2021-06-24
阅读 10 分钟
1.6k
在数据处理中,Pandas会将无法解析的数据或者缺失的数据使用NaN来表示。虽然所有的数据都有了相应的表示,但是NaN很明显是无法进行数学运算的。

Pandas高级教程之:处理text数据

2021-06-23
阅读 8 分钟
2.1k
在1.0之前,只有一种形式来存储text数据,那就是object。在1.0之后,添加了一个新的数据类型叫做StringDtype 。今天将会给大家讲解Pandas中text中的那些事。

密码学系列之:blowfish对称密钥分组算法

2021-06-21
阅读 4 分钟
2.8k
Blowfish是由Bruce Schneier在1993年发明的对称密钥分组加密算法,类似的DES和AES都是分组加密算法,Blowfish是用来替代DES算法出现的,并且Blowfish是没有商用限制的,任何人都可以自由使用。

架构之:数据流架构

2021-06-18
阅读 2 分钟
3.5k
在实际工作中的流有很多种,最常见的就是I/O流,I / O缓冲区,管道等。不同的组件或者模块通过这些流进行连接。数据的流向可以是带有循环的拓扑图,没有循环的线性结构或者树形结构等。

密码学系列之:feistel cipher

2021-06-16
阅读 2 分钟
3k
feistel cipher也叫做Luby–Rackoff分组密码,是用来构建分组加密算法的对称结构。它是由德籍密码学家Horst Feistel在IBM工作的时候发明的。feistel cipher也被称为Feistel网络。

Pandas高级教程之:Dataframe的重排和旋转

2021-06-15
阅读 12 分钟
1.7k
简介使用Pandas的pivot方法可以将DF进行旋转变换,本文将会详细讲解pivot的秘密。使用Pivotpivot用来重组DF,使用指定的index,columns和values来对现有的DF进行重构。看一个Pivot的例子:通过pivot变化,新的DF使用foo中的值作为index,使用bar的值作为columns,zoo作为对应的value。再看一个时间变化的例子: {代码......

Pandas高级教程之:Dataframe的合并

2021-06-14
阅读 11 分钟
2.8k
Pandas提供了很多合并Series和Dataframe的强大的功能,通过这些功能可以方便的进行数据分析。本文将会详细讲解如何使用Pandas来合并Series和Dataframe。

Pandas之:深入理解Pandas的数据结构

2021-06-11
阅读 6 分钟
3.9k
[toc]简介本文将会讲解Pandas中基本的数据类型Series和DataFrame,并详细讲解这两种类型的创建,索引等基本行为。使用Pandas需要引用下面的lib: {代码...} SeriesSeries是一维带label和index的数组。我们使用下面的方法来创建一个Series: {代码...} 这里的data可以是Python的字典,np的ndarray,或者一个标量。index是...

密码学系列之:生日攻击

2021-06-09
阅读 2 分钟
4.3k
生日攻击其实是一个概率论的问题,也就是说一个看起来很难发生的事情,事实上它发生的概率却很大。这种主观上和事实上的概率差距,让随机攻击成功的几率变的更高,这样的攻击就叫做生日攻击。

Pandas之:Pandas高级教程以铁达尼号真实数据为例

2021-06-07
阅读 14 分钟
2.6k
简介今天我们会讲解一下Pandas的高级教程,包括读写文件、选取子集和图形表示等。读写文件数据处理的一个关键步骤就是读取文件进行分析,然后将分析处理结果再次写入文件。Pandas支持多种文件格式的读取和写入: {代码...} 接下来我们会以Pandas官网提供的Titanic.csv为例来讲解Pandas的使用。Titanic.csv提供了800多个...

Pandas之:Pandas简洁教程

2021-06-05
阅读 12 分钟
2k
作变得更快更简单的数据结构和操作⼯具。pandas经常和其它⼯具⼀同使⽤,如数值计算⼯具NumPy和SciPy,分析库statsmodels和scikit-learn,和数据可视化库matplotlib等。

密码学系列之:碰撞抵御和碰撞攻击collision attack

2021-06-03
阅读 2 分钟
2.7k
简介hash是密码学和平时的程序中经常会用到的一个功能,如果hash算法设计的不好,会产生hash碰撞,甚至产生碰撞攻击。今天和大家详细探讨一下碰撞攻击。什么是碰撞攻击所谓碰撞攻击指的是对于同一个hash函数来说,两个不同的input通过hash计算得到了同样的hash值。用公式来说就是: {代码...} 这个攻击有什么作用呢?举...

架构之:软件架构漫谈

2021-06-01
阅读 3 分钟
3.5k
每一个程序员心中都有个架构师的梦想,架构是如此的重要,以至于每个程序员都在谈架构,仿佛没有架构的软件是没有灵魂的,不想做架构师的程序员不是一个好的码农一样。

架构之:并发和并行

2021-05-30
阅读 2 分钟
2.4k
在现代程序中,我们经常会使用到两个关键词:并发concurrency和并行parallelism,虽然两者的英文单词区别很大,但是翻译成中文之后几乎是一样的。虽然中文以其优美的语法和工整的写法凌驾于英语之上,但是带来的复杂性和翻译的多意性往往会给技术工作者一点点烦恼。

密码学系列之:SAFER

2021-05-28
阅读 2 分钟
2.7k
SAFER的全称是Secure And Fast Encryption Routine,在密码学中,SAFER主要是由James Massey(IDEA的设计师之一)代表Cylink公司设计的一组分组密码。

密码学系列之:memory-hard函数

2021-05-26
阅读 3 分钟
2.5k
Memory hard function简称为MHF,在密码学中,内存困难函数(MHF)是一个需要花费大量内存来完成的函数。MHF主要被用在工作量证明中。因为需要花费大量的内存,所以MHF也会被用在密码Hash中,可以防止恶意破解。

NumPy之:ndarray中的函数

2021-05-24
阅读 6 分钟
2.5k
简介在NumPy中,多维数组除了基本的算数运算之外,还内置了一些非常有用的函数,可以加快我们的科学计算的速度。简单函数我们先看下比较常见的运算函数,在使用之前,我们先构造一个数组: {代码...} {代码...} 计算数组中元素的开方: {代码...} {代码...} 自然常数e为底的指数函数: {代码...} {代码...} 取两个数组的...

NumPy之:ndarray多维数组操作

2021-05-19
阅读 7 分钟
2.8k
NumPy一个非常重要的作用就是可以进行多维数组的操作,多维数组对象也叫做ndarray。我们可以在ndarray的基础上进行一系列复杂的数学运算。

密码学系列之:IDEA

2021-05-17
阅读 1 分钟
3.8k
IDEA的全称是International Data Encryption Algorithm,也叫做国际加密算法,注意,这里不是我们常用的那个开发工具IDEA。

NumPy之:理解广播

2021-05-12
阅读 3 分钟
2.1k
广播描述的是NumPy如何计算不同形状的数组之间的运算。如果是较大的矩阵和较小的矩阵进行运算的话,较小的矩阵就会被广播,从而保证运算的正确进行。

密码学系列之:NIST和SHA算法

2021-05-10
阅读 2 分钟
3k
SHA算法大家应该都很熟悉了,它是一个用来计算hash的算法,目前的SHA算法有SHA1,SHA2和SHA3种。这三种算法都是由美国NIST制定的。

NumPy之:使用genfromtxt导入数据

2021-05-08
阅读 4 分钟
4.6k
在做科学计算的时候,我们需要从外部加载数据,今天给大家介绍一下NumPy中非常有用的一个方法genfromtxt。genfromtxt可以分解成两步,第一步是从文件读取数据,并转化成为字符串。第二步就是将字符串转化成为指定的数据类型。

NumPy之:结构化数组详解

2021-05-06
阅读 8 分钟
3.2k
简介普通的数组就是数组中存放了同一类型的对象。而结构化数组是指数组中存放不同对象的格式。今天我们来详细探讨一下NumPy中的结构化数组。结构化数组中的字段field因为结构化数组中包含了不同类型的对象,所以每一个对象类型都被称为一个field。每个field都有3部分,分别是:string类型的name,任何有效dtype类型的typ...

ECMAScript 2019(ES10)新特性简介

2021-05-04
阅读 4 分钟
2.3k
简介ES10是ECMA协会在2019年6月发行的一个版本,因为是ECMAScript的第十个版本,所以也称为ES10.今天我们讲解一下ES10的新特性。ES10引入了2大特性和4个小的特性,我们接下来一一讲解。Array的新方法flat和flatMap在ES10中,给Array引入了两个新的方法,分别是flat和flatMap。先来看一下flat。我们看一下 Array<T>...

NumPy之:数据类型对象dtype

2021-04-30
阅读 6 分钟
4k
之前讲到了NumPy中有多种数据类型,每种数据类型都是一个dtype(numpy.dtype )对象。今天我们来详细讲解一下dtype对象。

AI数学基础之:P、NP、NPC问题

2021-04-28
阅读 2 分钟
3.7k
简介我们在做组合优化的时候需要去解决各种问题,根据问题的复杂度不同可以分为P、NP、NPC问题等。今天给大家来介绍一下这些问题类型。P问题在计算复杂度理论中,P(也称为PTIME或DTIME)是基本的复杂度类型。 它是指能够使用确定图灵机在多项式时间内解决的所有决策问题。这里我们给一下P的定义,如果一个公式语言L是一...

NumPy之:标量scalars

2021-04-25
阅读 3 分钟
2.4k
Python语言中只定义了特定数据类的一种类型(比如只有一种整数类型,一种浮点类型等)。在不需要关注计算机中数据表示方式的普通应用程序中,这样做很方便。但是,对于科学计算来说,我们需要更加精确的控制类型。

NumPy之:数据类型

2021-04-23
阅读 5 分钟
2.8k
简介我们知道Python中有4种数字类型,分别是int,float,bool和complex。作为科学计算的NumPy,其数据类型更加的丰富。今天给大家详细讲解一下NumPy中的数据类型。数组中的数据类型NumPy是用C语言来实现的,我们可以对标一下NumPy中数组中的数据类型跟C语言中的数据类型:Numpy 中的类型C 中的类型说明np.bool_boolBoole...