自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

李培冠的博客

个人主页请见: https://lpgit.com

  • 博客(68)
  • 资源 (13)
  • 收藏
  • 关注

原创 欢迎访问个人网站:李培冠博客

以后内容会慢慢向个人网站转移,个人网站会有更多资料,更多干货.,欢迎访问李培冠博客:lpgit.com

2020-07-31 22:11:29 9589

原创 【Linux知识点】CentOS7 更换阿里云源

解决网络下载软件慢的问题解决系统软件升级的问题阿里云各个系统的源:https://developer.aliyun.com/mirror/找到 centos 的就行。第一步:备份原来的源cd /etc/yum.repos.d/mkdir backupmv CentOS-* /etc/yum.repos.d/backup第二步:下载新的源[root@localhost yum.repos.d]# curl -o /etc/yum.repos.d/CentOS-Base.repo ht.

2021-07-04 17:31:54 348

原创 【Golang 报错】exec gcc executable file not found in %PATH%

在 import sqlite3 的时候,golang build 出现以下错误:exec: “gcc”: executable file not found in %PATH%原因是 sqlitle3是个 cgo库,需要 gcd编译 c 代码需要下载安装 mingw:https://sourceforge.net/projects/mingw-w64/files/mingw-w64/我选择的是:MinGW-W64-install.exe,也可以下载其他类型。下载安装完之后,记得添加环境变量:

2021-04-17 13:32:48 1190

原创 【Linux知识点】Linux 系统三种分区方案

通用分区方案:/boot 引导分区(200M)swap 交换分区(当内存不够用的时候,将硬盘中的空间充当内存使用),内存 < 8G:建议交换分区大小 = 内存大小的 1.5 倍内存 >= 8G:建议交换分区大小 = 8G/ 根分区(剩余全部空间)数据信息比较重要的分区方案:/boot 引导分区(200M)swap 交换分区(当内存不够用的时候,将硬盘中的空间充当内存使用),内存 < 8G:建议交换分区大小 = 内存大小的 1.5

2021-03-11 11:24:36 4154

原创 【Linux】2 安装 Linux 操作系统(超级详细版)

CentOS 系统官网下载:http://isoredirect.centos.org/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1810.iso点击创建新的虚拟机,选择 自定义(高级),然后点击下一步;默认设置就好,点击"下一步";选择 “稍后安装操作系统”,点击"下一步";选择"Linux", 版本选择"CentOS 7 64 位", 根据自己需求也可以选择其他版本, 选择完毕后点击"下一步";命名虚拟机,更改位置,然后点击"下一步";处理器

2021-03-11 11:22:27 591

原创 淘宝京东拼多多内部优惠券是真的吗?

近期有很多小伙伴经常问我这些问题,加了很多内部优惠券群,他们分享的东西都是很便宜的,难道商家都愿意亏本?首先回答一下,优惠券肯定是真的,这是不可否认的。至于亏不亏本,看你怎么理解。商家通过优惠券,低价吸引更多的人来他的店铺,这才是商家的目的。说白了相当于花钱打广告了。有些小伙伴又问了,优惠券群那么多,根本看不过来啊。于是,本人秉着全心全意为人民服务的心,花费数月时间研究这些优惠券群以及拜访...

2021-03-09 19:02:00 58

原创 租房项目 获取地区信息服务

流程接口# Request: method: GETurl: api/v1.0/areas# data:no input data# Response:# 返回成功{ "errno": 0, "errmsg": "ok", "data": [ {"aid": 1, "aname": "东城区"}, {"aid": 2, "aname": "西城区"}, ... ]} # 返回失败{

2020-08-26 15:39:41 8285

原创 租房项目 启动前的处理

项目启动拆分原则1、单一职责(一个服务只做一件事)2、服务粒度适中3、考虑团队结构4、以业务模型切入5、演进式拆分6、避免环形依赖和双向依赖如果还没有安装 beego 的话先安装 beego$ go get -u -v github.com/astaxie/beego$ go get -u -v github.com/beego/bee$ cd $GOPATH/src/github.com/beego/bee$ go build$ sudo mv bee /bin/服务发现的启

2020-08-24 21:46:29 9363

原创 一步步带你用 FastDFS 搭建文件管理系统 详细的不得鸟

文章目录FastDFS概述FastDFS 中的三个角色FastDFS 三个角色的关系FastDFS集群FastDFS 架构说明FastDFS 安装安装 FastDFS 依赖包安装 FastDFS验证配置跟踪服务器 tracker配置存储服务器storage启动tracker和storage测试是否安装成功安装 fastdfs-nginx-modulenginx 配置启动 nginx李培冠博客FastDFS概述开源地址:https://github.com/happyfish100余庆大佬用 c

2020-08-24 19:43:27 9590 1

原创 golang 两个go程轮流打印一个切片

问题描述:两个 go 程轮流打印一个切片。Golang 实现:package mainimport ( "fmt" "sync")// 两个 go 程轮流打印一个切片func main() { ch1 := make(chan bool, 1) ch2 := make(chan bool, 1) ch1 <- true nums := []int{1, 2, 3, 4, 5, 6, 7, 8, 9} var i int var wg sync.WaitGroup w

2020-08-21 10:25:18 9582 1

原创 golang 拷贝大切片一定比小切片代价大吗

问题描述拷贝大切片一定比小切片代价大吗?解答并不是,拷贝所有切片的代价都是一样的。看一下源码,就很清楚了:type slice struct { array unsafe.Pointer len int cap int}因为切片的底层有三个字段(一个 unsafe.Pointer,两个 int)。其中 unsafe.Pointer 指向的是切片底层数组的指针,这是切片的存储空间,第二个字段是切片的长度,第三个字段是切片的容量。将一个切片变量分配给另一个变量只会复制三个机器字

2020-08-19 21:30:17 9743

原创 matlab 如何把数组A中与数组B中元素相同的元素删除

比如:A = [1 3  7  6  4  5  2];B = [3 5 6];如何把数组A中与数组B中的元素相同的元素删除,而剩余的元素还是按照原来的顺序排列?即结果为:[1 7 4 2]。[~, ia] = setdiff(A, B);res = A(sort(ia));欢迎访问我的个人网站:李培冠博客:lpgit.com...

2020-08-19 19:03:37 13433

原创 MATLAB 在一个数组中随机选择n个数

MATLAB 中在一个数组内随机选择n个数。例如:在 A = [10, 50, 80, 100, 130, 260] 中随机选择5个数。允许重复:n = 5;A = [10, 50, 80, 100, 130, 260];random_num = A(randi(numel(A),1,n));random_num = sort(random_num);不允许重复:n = 5;A = [10, 50, 80, 100, 130, 260];random_num = A(randperm(

2020-08-19 14:49:59 56565 4

原创 MATLAB 中矩阵删除一行或者一列的方法

输入一个矩阵A>> A = [1, 2, 3; 4, 5, 6; 7, 8, 9]A = 1 2 3 4 5 6 7 8 9删除一行>> A(2, :) = []A = 1 2 3 7 8 9输入一个矩阵A>> A = [1, 2, 3; 4, 5, 6; 7, 8, 9]A = 1 2

2020-08-19 10:39:57 15780

原创 golang 如何翻转含有中文 数字 英文字母等任意字符串

问题描述翻转含有 中文、数字、英文字母 等任意字符串示例输入:"he師l發lo,世。+-*界,6"输出:"6,界*-+。世,ol發l師eh"Golang 实现package mainimport "fmt"func reverseString(s string) string { // 将字符串转换为 rune 类型的切片,并对该切片翻转 res := reverse([]int32(s)) // 再把 rune 类型的切片转为 string return string(res

2020-08-19 09:40:51 9585

原创 Redis Go语言与Redis数据库交互

安装go get github.com/gomodule/redigo/redis安装完成后,可以自己创建一个 go 文件:test.go内容如下:package mainimport "github.com/gomodule/redigo/redis"func main(){ conn, _ := redis.Dial("tcp", ":6379") defer conn.Close() conn.Do("set", "c1", "hello")}然后编译运

2020-08-17 16:00:52 8375

原创 在 Go 1.15 中 var i interface{} = 3 会有额外堆内存分配吗

首先先说一下结论, 在最新版本 Go 1.15 中, 在 runtime 部分中提到了一个改进:Converting a small integer value into an interface value no longer causes allocation.意思是说,将小整数转换为接口值不再需要进行内存分配。小整数是指 0 到 255 之间的数。那么这个是怎么实现的呢?具体的代码在这里: runtime: prevent allocation when converting small i

2020-08-16 10:16:30 8812

原创 Redis 基础操作

数据库结构redis 是 key - value 的数据结构,每条数据都是一个键值对键的类型是字符串注意:键不能重复值的类型分为5种:字符串(string)、列表(list)、哈希(hash)、集合(set)、有序集合(zset)。数据库操作行为:增加、修改、获取、删除。点击中⽂官⽹查看命令⽂档: http://redis.cn/commands.htmlstring 类型​ 字符串类型是Redis中最为基础的数据存储类型,该类型可以接受任何格式的数据,如JPEG图像数据或Json对

2020-08-15 19:10:55 9020

原创 Redis 简介与安装

简介Redis 是一种高性能的 Key-Value 数据库。Redis 中文官网NoSQL 介绍NoSQL是一种新出现的数据库(Not Only SQL),它的特点:不支持 SQL 语法存储结构跟传统关系型数据库中的那种关系表完全不同,NoSQL 中存储的数据都是 Key-Value 形式NoSQL 的世界中没有一种通用的语言,每种 NoSQL 数据库都有自己的 api 和语法,以及擅长的业务场景。NoSQL 的种类MongoDB、Redis、Hbase hadoop、Cassandr

2020-08-07 12:10:55 10291

原创 Golang 锁和条件变量

前言前面我们为了解决go程同步的问题我们使用了channel, 但是go也提供了传统的同步工具.它们都在go的标准库代码包 sync 和 sync/atomic 中.下面我们来看一下锁的应用.什么是锁呢? 就是某个协程(线程)在访问某个资源时先锁住, 防止其他协程的访问, 等访问完毕解锁后其他协程再来加锁进行访问.这和我们生活中加锁使用公共资源相似, 例如: 公共卫生间.死锁死锁是指两个或者两个以上的进程在执行过程中, 由于竞争资源或者由于彼此通信而造成的一种阻塞的现象, 若无外力作用, 它们

2020-08-07 12:10:00 14978 1

原创 Golang select

select的作用Go里面提供了一个关键字 select, 通过 select 可以监听channel上的数据流动.select 的用法与 switch 语言非常类似, 由 select 开始一个新的选择块, 每个选择条件由 case 语句来描述.与 switch 语句相比, select 有比较多的限制, 其中最大的一条限制就是每个case语句里必须是一个IO操作.大致的结构如下:select {case <- chan1: // 如果chan1成功读到数据, 则进行该case处理语句

2020-08-04 11:20:15 10325 1

原创 Golang sync.WaitGroup

Go语言中除了可以使用通道(channel)和互斥锁进行两个并发程序间的同步外,还可以使用等待组进行多个任务的同步,等待组可以保证在并发环境中完成指定数量的任务在 sync.WaitGroup(等待组)类型中,每个 sync.WaitGroup 值在内部维护着一个计数,此计数的初始默认值为零。等待组有下面几个方法可用,如下所示。func (wg *WaitGroup) Add(delta int): 等待组的计数器 +1func (wg *WaitGroup) Done(): 等待组的计数器 -1

2020-08-04 11:18:11 9915

原创 Golang channel

简介channel 是 Go 语言中的一个核心类型,可以把它看成管道。并发核心单元通过它就可以发送或者接收数据进行通讯,这在一定程度上又进一步降低了编程的难度。channel 是一个数据类型,主要用来解决 go 程的同步问题以及 go 程之间数据共享(数据传递)的问题。goroutine 运行在相同的地址空间,因此访问共享内存必须做好同步。goroutine 奉行通过通信来共享内存,而不是共享内存来通信。引⽤类型 channel 可用于多个 goroutine 通讯。其内部实现了同步,确保并发安全(

2020-08-04 11:17:42 10422

原创 Golang Goroutine

什么是 Goroutinegoroutine 是 Go 并行设计的核心。goroutine 说到底其实就是协程,它比线程更小,十几个 goroutine 可能体现在底层就是五六个线程,Go 语言内部帮你实现了这些 goroutine 之间的内存共享。执行 goroutine 只需极少的栈内存(大概是4~5KB),当然会根据相应的数据伸缩。也正因为如此,可同时运行成千上万个并发任务。goroutine 比 thread 更易用、更高效、更轻便。一般情况下,一个普通计算机跑几十个线程就有点负载过大了,但是

2020-08-04 11:17:09 9549

原创 Golang 并发编程

前言简而言之,所谓并发编程是指在一台处理器上“同时”处理多个任务。随着硬件的发展,并发程序变得越来越重要。Web服务器会一次处理成千上万的请求。平板电脑和手机app在渲染用户画面同时还会后台执行各种计算任务和网络请求。即使是传统的批处理问题–读取数据,计算,写输出–现在也会用并发来隐藏掉I/O的操作延迟以充分利用现代计算机设备的多个核心。计算机的性能每年都在以非线性的速度增长。宏观的并发是指在一段时间内,有多个程序在同时运行。并发在微观上,是指在同一时刻只能有一条指令执行,但多个程序指令被快速的轮换

2020-08-04 10:58:37 10074

原创 Golang 指针

指针是一个代表着某个内存地址的值, 这个内存地址往往是在内存中存储的另一个变量的值的起始位置.Go语言对指针的支持介于Java语言和 C/C++ 语言之间, 它既没有像Java那样取消了代码对指针的直接操作的能力, 也避免了 C/C++ 中由于对指针的滥用而造成的安全和可靠性问题.指针地址和变量空间Go语言保留了指针, 但是与C语言指针有所不同. 主要体现在:默认值: nil.操作符 & 取变量地址, * 通过指针访问目标对象.不支持指针运算, 不支持 -> 运算符, 直接用 .

2020-08-04 10:58:04 10674 2

原创 Golang 结构体

前言结构体是一种聚合的数据类型,是由零个或多个任意类型的值聚合成的实体。每个值称为结构体的成员。用结构体的经典案例:学校的学生信息,每个学生信息包含一个唯一的学生学号、学生的名字、学生的性别、家庭住址等等。所有的这些信息都需要绑定到一个实体中,可以作为一个整体单元被复制,作为函数的参数或返回值,或者是被存储到数组中,等等。结构体也是值类型,因此可以通过 new 函数来创建。组成结构体类型的那些数据称为字段(fields)。字段有以下特性:字段拥有自己的类型和值。字段名必须唯一。字段的类型也可

2020-08-04 10:57:33 9199

原创 Golang map

前言哈希表是一种巧妙并且实用的数据结构。它是一个无序的 key/value对 的集合,其中所有的 key 都是不同的,然后通过给定的 key 可以在常数时间复杂度内检索、更新或删除对应的 value。在 Go 语言中,一个 map 就是一个哈希表的引用,map 类型可以写为 map[K]V,其中 K 和 V 分别对应 key 和 value。map 中所有的 key 都有相同的类型,所有的 value 也有着相同的类型,但是 key 和 value 之间可以是不同的数据类型。其中 K 对应的 key 必

2020-08-04 10:56:46 9857

原创 Golang 条件语句

在Go语言中,条件语句主要包括有if 、 switch 与 select。注意: Go语言中没有三目运算符,不支持 ?: 形式的条件判断。if 语句最简单的if语句最简单的 if 语句的基本语法:if 条件判断 { // 在当前条件判断为true时执行}条件判断如果为真(true),那么就执行大括号中的语句;如果为假(false),就不执行大括号中的语句,继续执行if结构后面的代码。**值得注意的是:**Go语言规定与 if 匹配的左括号 { 必须与 if和条件判断 放在同一行。

2020-08-04 10:53:20 8599

原创 Golang 运算符

运算符Go语言中常见的运算符有算术运算符, 赋值运算符, 关系运算符, 逻辑运算符等.算术运算符运算符描述示例结果+相加10 + 313-相减10 - 37*相乘10 * 330/相除10 / 33%取余10 % 31注意:自增( ++ )和自减( -- )在Go语言中是单独的语句, 并不是运算符, 也不是表达式.不允许不同类型进行相加。赋值运算符运算符描述示例=普通赋值, 将一个表

2020-08-04 10:52:47 10041

原创 Golang 常量

相对于变量, 常量是恒定不变的值, 经常用于定义程序运行期间不会改变的那些值.常量的定义使用常量的声明与变量的声明很相似, 只是把 var 换成了 const, 常量在定义的时候必须赋值.在程序开发中, 我们用常量存储一直不会发生变化的数据. 例如: Π, 身份证号码等. 像这类数据, 在整个程序运行中都是不允许发生改变的.package mainimport "fmt"func main(){ const pi float64 = 3.14159 // pi = 4.56

2020-08-03 19:24:12 8369

原创 误差分析计算公式及其 matlab 代码实现(mse、mape、rmse等)

残差平方和(SSE)计算公式:代码实现:sse = sum((YReal - YPred).^2);均方误差(MSE)计算公式:代码实现:mse = sqrt(sum((YReal - YPred).^2))./2;平均绝对误差(MAE)计算公式:代码实现:mae = mean(abs(YReal - YPred));平均绝对百分比误差(MAPE)计算公式:代码实现mape = mean(abs((YReal - YPred)./YReal));均方根误差(R

2020-08-03 19:22:41 76628 13

原创 Golang 占位符

我们前面在输出与输入字符串类型, 整数类型等都指定了对应的格式化.那么Go语言中还有哪些格式化呢?格式含义%%一个 % 字面量%b一个二进制整数值(基数为2), 或者是一个用科学计数法表示的指数为2的浮点数.%c字符型. 可以把输入的数字按照ASCII码相应的转换为对应的字符.%d一个十进制数值(基数为10).%e以科学记数法 e 表示的浮点数或者复数值%E以科学记数法 E 表示的浮点数或者复数值%f以标准计数法表示的浮点数或者复数值

2020-08-03 11:36:04 9517

原创 Go-GTK 信号处理

信号处理简介现在我们已经把按钮添加到窗口中了,但是有一个问题:点击按钮没有反应。我们既然添加的是按钮,肯定希望当我们点击一个按钮时,能够做一些事情,这就用到了信号处理。学习图形界面编程,我们会经常接触到“信号”这个名词。GTK中的“信号”实际上是一种软件中断。“中断”在我们生活中经常遇到,譬如,我正在房间里打游戏,突然送快递的来了,把正在玩游戏的我给“中断”了,我去签收快递( 处理中断 )...

2020-08-02 22:28:00 24

原创 Go-GTK 控件

控件控件简介控件是对数据和方法的封装。控件有自己的属性和方法。属性是指控件的特征。方法是指控件的一些简单而可见的功能。如按钮就是一个控件,这个按钮是方形的,里面有张图片,这是我们能看到外观属性,同时,这个按钮具备被人按下的功能。GTK 中控件主要分为两类:容器控件,非容器控件。容器控件:它可以容纳别的控件。我们可以理解为盒子,盒子拿来装东西。容器控件又分为两类,一类只能容纳一个控件,如...

2020-08-02 22:26:00 17

原创 Go-GTK 简单的空白窗口

简单的空白窗口在环境配置完成之后,需要在 github 上下载 go-gtk。在配置好的 GOPATH 的 src 目录下用 git 下载即可。当然,也可以在 GOPATH 以外的目录使用 go mod。在goland中的设置:第一次运行点击这里:示例代码:package mainimport ( "github.com/mattn/go-gtk/gtk" "os")...

2020-08-02 22:09:00 15

原创 Go-GTK go 版GTK环境搭建

Go版GTK环境搭建下载安装MSYS2官网下载MSYS2(Minimal SYStem 2)是一个MSYS的独立改写版本,主要用于shell命令行开发环境。同时它也是一个在Cygwin(POSIX兼容性层)和MinGW-w64(从"MinGW-生成")基础上产生的,追求更好的互操作性的Windows软件。打开 官网 选择对应版本下载.直接默认配置狂点下一步安装即可。使用以下功能更...

2020-08-02 22:07:00 43

原创 golang 二维切片初始化

在做一些算法题时经常要用到二维切片,所以这里整理一下创建二维切片的方法,方便日后查阅。package mainimport "fmt"func main() { // 初始化方法1 row, column := 3, 4 var answer [][]int for i := 0; i < row; i++ { inline := make([]int, column...

2020-08-02 22:05:00 45

原创 如何在 go 中将 int 类型转为字符串

比如想要把int类型的123转为string类型的"123", 应该如何操作呢?如果按照下面的写法. 那么我会得到"{", 而不是"123"。package mainimport "fmt"func main() { i := 123 s := string(i) fmt.Println(s)}可以使用strconv包中的Itoa功能。例如:package main...

2020-08-02 22:04:00 31

原创 为什么 Go 语言没有三元运算符

这个问题在这里给出了解答:https://stackoverflow.com/questions/60561748/why-go-doesnt-have-a-tenary-conditional-operator虽然Go中没有三元运算操作,但是可以使用以下方法实现同样的结果:if expr { n = trueVal} else { n = falseVal}Go语言中没有的原因是...

2020-08-02 22:03:00 23

Python数据分析-pandas玩转Excel - 资料.zip

Python数据分析-pandas玩转Excel - 资料

2019-06-13

《Python数据分析》升级版 - 课件及代码

《Python数据分析》升级版 - 课件及代码 对应的视频链接在这里: https://space.bilibili.com/38263326

2019-04-15

流畅的Python

“Python 是一门既容易上手又强大的编程语言。 ”这句话本身并无大碍,但需要注意的是,正因为它既好学又好用,所以很多 Python 程序员只用到了其强大功能的一小部分。

2019-03-25

3. 北风网人工智能 - 人工智能数学基础之概率论和数理统计

3. 北风网人工智能 - 人工智能数学基础之概率论和数理统计

2018-12-29

2. 北风网人工智能 - 人工智能数学基础之矩阵和线性代数

2. 北风网人工智能 - 人工智能数学基础之矩阵和线性代数

2018-12-29

1. 北风网人工智能 - 人工智能数学基础之数据分析

1. 北风网人工智能 - 人工智能数学基础之数据分析

2018-12-29

Python机器学习及实践 -- 从零开始通往Kaggle竞赛之路_清华大学出版社

Python机器学习及实践 -- 从零开始通往Kaggle竞赛之路_清华大学出版社.pdf

2018-12-29

AI 人工智能的本质与未来

人工智能(Artificial Intellegence,AI)就是让计算机完成人类心智 (mind)能做的各种事情。通常,我们会说有些行为(如推理)是“智能 的”,而有些(如视觉)又不是。但是,这些行为都包含能让人类和动物 实现目标的心理技能,比如知觉、联想、预测、规划和运动控制。 智能不是一维的,而是结构丰富、层次分明的空间,具备各种信息 处理能力。于是,人工智能可以利用多种技术,完成多重任务。 人工智能无处不在。

2018-12-29

python机器学习基础教程+源码

本书是机器学习入门书,以Python语言介绍。主要内容包括:机器学习的基本概念及其应用;实践中最常用的机器学习算法以及这些算法的优缺点;在机器学习中待处理数据的呈现方式的重要性,以及应重点关注数据的哪些方面;模型评估和调参的高级方法,重点讲解交叉验证和网格搜索;管道的概念;如何将前面各章的方法应用到文本数据上,还介绍了一些文本特有的处理方法。

2018-07-17

福州大学 863 数据结构 历年真题 2015年真题

福州大学研究生入学考试计算机相关专业863数据结构与程序设计2015年真题

2018-07-05

福州大学 863 数据结构 历年真题 2016年真题

福州大学研究生入学考试计算机相关专业863数据结构与程序设计2016年真题

2018-07-05

计算机组成原理 本科最新课件PPT

泰山医学院 山东第一医科大学 计算机组成原理 本科最新课件

2018-06-28

空空如也

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

TA关注的人

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