Go
go-proxy-bing基于New Bing的开源Bing AI源码,无需登录即可畅聊
go-proxy-bing是一款基于微软New Bing简单定制的开源网站源码,使用Vue3和Go编写。 它不仅拥有一致的UI体验,还支持ChatGPT提示词,国内可用,基本兼容微软Bing AI所有功能,用户可以无需登录即可畅聊。 当需要使用画图等高级功能时(需选择更有创造力模式或右上角「设置」= ......
go语言序列化和反序列化
序列化需求 内存中的map、slice、array以及各种对象,如何保存到一个文件中? 如果是自己定义的结构体的实 例,如何保存到一个文件中? 如何从文件中读取数据,并让它们在内存中再次恢复成自己对应的类型的实例? 要设计一套协议,按照某种规则,把内存中数据保存到文件中。文件是一个字节序列,所以必须 ......
Go优雅的错误处理: 支持错误堆栈, 错误码, 错误链的工具库
地址: https://github.com/morrisxyang/errors 如果觉得有用欢迎 Star 和 PR, 有问题请直接提issue # errors [ func main() { var m = []int{1, 3, 5} for i, v := range m { go ......
为什么做GO/KEGG富集分析
在进行差异表达分析的时候,我们会得到很多的差异表达基因,富集分析可以把这些差异基因概述成整体事件。A信号通路与症状有关,而不是A1/A2/A3等基因与症状有关。GO和KEGG就是基于不同的分类,而储存的基因相关功能的数据库。 利用GO数据库,我们就可以得到我们的目标基因在CC, MF和BP三个层面上 ......
Go 并发模型—Goroutines
## 前言 Goroutines 是 [Go](https://go.dev) 语言主要的并发原语。它看起来非常像线程,但是相比于线程它的**创建和管理成本很低**。Go 在运行时将 goroutine 有效地调度到真实的线程上,以避免浪费资源,因此您可以轻松地创建大量的 goroutine(例如每 ......
go语言:没有class
参考:[视频链接](https://www.bilibili.com/video/BV1fD4y1m7TD) # 没有class go语言没有class,但是可以将方法可以被关联到你声明的struct类型,如下介绍了如何将方法关联到类型和构造函数: ``` package main import ( ......
Go语言基础-Go语言基础语法入门
第01天 上午01 课程内容 初识GO语言 开发环境搭建 第一个程序(程序结构) 基本组成元素 标识符 运算符 分隔符 变量、常量、作用域 数据类型 布尔型 整数 浮点数 字符串 指针 流程控制 if switch for 作业: 打印乘法口诀 猜数字 001初识GO语言 Go语言发展历史 Go 语 ......
在 Go gRPC 中传递额外参数
Go gRPC 是一个高性能、开源的 RPC 框架,它支持通过 Protocol Buffers 进行序列化和反序列化,提供了简单易用的 API,并且可以跨语言通信。在实际开发中,我们有时需要在 gRPC 方法之间传递一些额外的参数,例如请求头信息、跟踪 ID、取消信号等。本文将介绍在 Go gRP ......
Go语言基础-目录
# Go语言基础-目录 ## 阶段一 Go语言基础 ### 第01天 Go语言基础语法入门 第02天 Go语言复合数据类型 第03天 Go语言中的函数 第04天 Go语言中的包和单元测试 第05天 Go语言面向对象和结构体 第06天 Go语言的文件与IO操作 第07天 Go语言的接口与反射 ## 阶 ......
go NewTicker 得使用
转载请注明出处: 在 Go 语言中,time.NewTicker 函数用于创建一个周期性触发的定时器。它会返回一个 time.Ticker 类型的值,该值包含一个通道 C,定时器会每隔一段时间向通道 C 发送一个时间值。 NewTicker 函数的签名如下: func NewTicker(d Dur ......
go 多个请求防抖
如果有多个请求请求一个接口,当前处理的又是耗时操作的话,直接返回空数据,直到当前耗时操作完成后 再处理最新的一个请求 命令定义和区别 go install 和 go get 都是 Go 语言的工具命令,但它们之间有一些区别。 go get:用于从远程代码存储库(如 GitHub)中下载或更新 Go 代码包。它会下载代码包并将其存储在 $GOPATH/src 目录下对应的位置,并编译代码包中的程序和库。如果目标 ......
Go语言中JSON文件的读写操作
Go语言中JSON文件的读写操作 本文主要介绍了Go语言JSON文件的读写操作,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧 + 目录 JSON(JavaScript Object Notation)是一种轻量级的数据交换格式, ......
Go 语言函数
函数定义与调用 package main import "fmt" func main() { /* 定义局部变量 */ var a int = 100 var b int = 200 var ret int /* 调用函数并返回最大值 */ ret = max(a, b) fmt.Printf( ......
Go 语言循环语句
Go 语言 for 循环 语法 for init; condition; post { } for condition { } for { } init: 一般为赋值表达式,给控制变量赋初值; condition: 关系表达式或逻辑表达式,循环控制条件; post: 一般为赋值表达式,给控制变量增量 ......
Go 语言条件语句
语句描述 if 语句 if 语句 由一个布尔表达式后紧跟一个或多个语句组成。 if...else 语句 if 语句 后可以使用可选的 else 语句, else 语句中的表达式在布尔表达式为 false 时执行。 if 嵌套语句 你可以在 if 或 else if 语句中嵌入一个或多个 if 或 e ......
go中的各种路径
假设有个a.go文件在/apis/app/account/ package main import ( "fmt" "os" ) func main() { curWD, err := os.Getwd() if err != nil { panic(err) } fmt.Println(curWD ......
Go 语言运算符
Go 语言内置的运算符有: 算术运算符 关系运算符 逻辑运算符 位运算符 赋值运算符 其他运算符 算术运算符 运算符描述实例 + 相加 A + B 输出结果 30 - 相减 A - B 输出结果 -10 * 相乘 A * B 输出结果 200 / 相除 B / A 输出结果 2 % 求余 B % A ......
Go 语言常量
常量中的数据类型只可以是布尔型、数字型(整数型、浮点型和复数)和字符串型。 const identifier [type] = value 实例 package main import "fmt" func main() { const LENGTH int = 10 const WIDTH int ......
Go 语言变量
声明变量的一般形式是使用 var 关键字: var identifier type 根据值自行判定变量类型。 var v_name = value 省略var, 注意 :=左侧的变量不应该是已经声明过的,否则会导致编译错误 var a int = 10 var b = 10 c := 10 例如 p ......
Supervisor--go版安装
### 安装 #### 1.下载指定golang版本的安装包 安装包下载地址:[https://github.com/ochinchina/supervisord/releases/tag/v0.7.3](https://github.com/ochinchina/supervisord/relea ......
Go 语言数据类型
数据类型用于声明函数和变量。 Go 语言按类别有以下几种数据类型: 序号类型和描述 1 布尔型布尔型的值只可以是常量 true 或者 false。一个简单的例子:var b bool = true。 2 数字类型整型 int 和浮点型 float,Go 语言支持整型和浮点型数字,并且原生支持复数,其 ......
Go 语言基础语法
标识符 标识符用来命名变量、类型等程序实体。 36 个预定义标识符 append bool byte cap close complex complex64 complex128 uint16 copy false float32 float64 imag int int8 int16 uint32 ......
go语言结构
基础组成 包声明 引入包 函数 变量 语句 & 表达式 注释 package mainimport "fmt"func init(){ fmt.Print("hello world1\n")}func main(){ fmt.Print("hello world")} package main表示一 ......
go select 使用总结
转载请注明出处: 在Go语言中,select语句用于处理多个通道的并发操作。它类似于switch语句,但是select语句用于通信操作,而不是条件判断。select语句会同时监听多个通道的操作,并选择其中一个可用的通道进行操作。 select语句的语法如下: select { case <-chan ......
go语言的"面向对象"
面向对象定义 面向对象三要素: 封装:将属性(数据)和方法(操作)封装,提供访问控制,隐藏实现细节,暴露该暴露的 继承:子类可以从父类直接获得属性和方法,减少重复定义。子类中如果与父类不同,可以自己定 义新的属性和方法,也可以覆盖同名的属性和方法 多态:前提是继承和覆盖,使得子类中虽然使用同一个方法 ......