Go语言中文网 为您找到相关结果 136

go语言基础语法练习(1)

1、for range结构 在go语言中,循环结构只有一个关键字for,但它的循环模式依旧是多样化的。 for init;condition;post{ }这是c中标准的for循环结构,有初值、条件和步长。 for condition{ }这个则是模拟c中while循环,需要在循环体中改变循环变量 for{ }这个就是无限循环了,相当于c中的for(;;) 而go语言中还有一种特定的结构,for range package main import "fmt" func main(){ language:=[]string{"C","C++","Python","Go","Java"} for key,value:=range language{ fmt.Printf("%d %s\n",ke...阅读全文

博文 2017-08-28 05:32:38 polanwind

备战CKA每日一题——第6天 | kube-scheduler调度器高级调度:亲和性反亲和性调度,Deployment升级回滚

本活动在微信公众号【我的小碗汤】上举行,有送书活动!这里参与答题不能参与到送书活动哦! 昨日考题 通过命令行,创建两个deployment。 需要集群中有2个节点 ; 第1个deployment名称为cka-1122-01,使用nginx镜像,有2个pod,并配置该deployment自身的pod之间在节点级别反亲和; 第2个deployment名称为cka-1122-02,使用nginx镜像,有2个pod,并配置该deployment的pod与第1个deployment的pod在节点级别亲和; 最好提交最精简的deployment yaml,如果评论被限制,请提交反亲和性配置块yaml,也可多次评论提交 昨日答案 第一个deployment:cka-1122-01 apiVersion: ...阅读全文

go语言使用哈希算法对用户输入的密码进行加密用户登录时对用户的密码进行比对

# 哈希算法 ** 文章转自go语言中文文档 [http://www.topgoer.com](http://www.topgoer.com/?from=studygolang "文章转自go语言中文文档http://www.topgoer.com") ** ### 使用场景 + 对用户输入的密码进行加密 + 用户登录时对用户的密码进行比对 ### 例子 ```go package main import ( "errors" "fmt" "golang.org/x/crypto/bcrypt" ) func main() { userPassword := "123456" passwordbyte, err := GeneratePassword(userPassword) if err...阅读全文

博文 2020-02-20 11:02:46 lu569368

零基础入门学习Python

课程介绍 本系列教程面向零基础的同学,是一个深入浅出,通俗易懂的Python3视频教程。 前半部分主要讲解Python3的语法特性,后半部分着重讲解Python3在爬虫、Tkinter、Pygame游戏开发等实例上的应用。整个系列共16个章节,前边13个章节从一个小游戏引入Python,逐步介绍Python的语法以及语言特色。最后3个章节为案例的演示,是前边内容的总结和提高。 课程目标 Python入门 Python实践 Python开发 Python爬虫 Python游戏开发 Python全栈开发 适合人群 零基础 初学者 编程爱好者 课时列表 • 课时1:000愉快的开始 •...阅读全文

leetcode_141

Golang: 思路:这道题是我在刷题的早期遇见的题,当时的思路是用map记录跑过的点,如果有环,那么指针终归会经过map里的点。但是,这个思路不是最好的思路,很明显,快慢指针才是解决这个问题的王道。什么是快慢指针,就是双指针,一个指针每次走两步,另一个每次走一步,那么如果有环,快指针势必会追上慢指针。 小记:最近因为有其他事情,所以会耽误自己刷题,希望自己还是能尽量抽出闲暇时间来写写leetcode和算法。 代码如下: func hasCycle(head *ListNode) bool { if head==nil||head.Next==nil{ return false } pointer1,pointer2:=head,head for { if pointer2.Next!=ni...阅读全文

博文 2020-02-10 05:32:38 淳属虚构

解析字符串中的布尔表达式并进行计算——Golang 实现

这里只讲讲思路,具体的代码可以去我的Github获取。 程序支持小数形式的逻辑运算,但精度不超过3位。程序仅支持由以下运算符构成的逻辑表达式的运算:+ - * / == != >= > <= < ( ) && || 第一步,对字符串中的数据进行语法检查 给定一个字符串:"4+5>=32||(2+3)==5.25"对该字符串的语法检查包括: 对表达式元素类型检查,如:表达式中不能出现除上述运算符、0-9的数字、小数点之外的字符; 对运算数格式检查,如:小数点在运算数中出现的位置、运算数的小数位数等; 对表达式中左括号和右括号一致性检查,如:对任意一个左括号是否总有一个右括号与之对应、每对括号中是否有值; 对表达式中运算符位置合法性检查,如:运算符左侧和右侧相邻元素的类型、不能除以0等。 第二步...阅读全文

博文 2020-01-09 18:32:38 match

golang main 和 init,函数和方法

在golang中有两个特殊的函数,main函数和init函数,main函数不用介绍在所有语言中都一样,它作为一个程序的入口,只能有一个。init函数在每个package是可选的,可有可无,甚至可以有多个(但是强烈建议一个package中一个init函数),init函数在你导入该package时程序会自动调用init函数,所以init函数不用我们手动调用,l另外它只会被调用一次,因为当一个package被多次引用时,它只会被导入一次。 package mypackage import ( "fmt" ) var I int func init() { I = 0 fmt.Println("Call mypackage init1") } func init() { I = 1 fmt.Prin...阅读全文

博文 2018-07-20 00:30:00 huangliang-hb

Golang语言下使用Protocol Buffer教程

代码仓库地址 一、介绍 Protobuf是Google旗下的一款平台无关,语言无关,可扩展的序列化结构数据格式。所以很适合用做数据存储和作为不同应用,不同语言之间相互通信的数据交换格式,只要实现相同的协议格式即同一proto文件被编译成不同的语言版本,加入到各自的工程中去,这样不同语言就可以解析其他语言通过Protobuf序列化的数据。目前官网提供了C++,Python,JAVA,GO等语言的支持。 相对于JSON和XML具有以下优点: 简洁 体积小:消息大小只需要XML的1/10 ~ 1⁄3 速度快:解析速度比XML快20 ~ 100倍 使用Protobuf的编译器,可以生成更容易在编程中使用的数据访问代码 更好的兼容性,Protobuf设计的一个原则就是要能够很好的支持向下或向上兼容 注...阅读全文

博文 2018-08-14 00:30:02 OctoptusLian

(四)GoLang小记 —— 中文编程

什么,GoLang 也能写中文代码?是的, 你没看错! (编译版本) 请将如下代码复制到您的IDE后直接运行; package main import ( "fmt" ) type 老爸 struct { 力量 string 高大 string } type 老妈 struct { 聪明 string 细心 string } type 儿子 struct { 老爸 老妈 } func main() { var 儿子对象 = 儿子{老爸{"我有力量","我长得高"},老妈{"我很聪明","我很细心"}} fmt.Println("s.力量:",儿子对象.力量) fmt.Println("s.高大:",儿子对象.高大) fmt.Println("s.聪明:",儿子对象.聪明) fmt.Print...阅读全文

博文 2016-10-19 11:00:13 水果糖

备战CKA每日一题——第2天 | Daemonset、对接存储CSI知识点

本活动在微信公众号【我的小碗汤】上举行,有送书活动!这里参与答题不能参与到送书活动哦! 接上一篇备战CKA每日一题——第1天 昨日考题 以下 Daemonset yaml 中,哪些是正确的?(多选) A. apiVersion: apps/v1 kind: DaemonSet metadata: name: fluentd-elasticsearch namespace: default labels: k8s-app: fluentd-logging spec: selector: matchLabels: name: fluentd-elasticsearch template: metadata: labels: name: fluentd-elasticsearch spec: co...阅读全文

Go语言小贴士3 - bufio包

之前我们介绍了io包和协议解析,这次我们要来讲讲bufio包,这个包实现了在项目中很常用到的带缓冲的IO。 先从我们前一个小贴士中的分包代码讲起,重新贴一下这段代码: func ReadPacket(conn net.Conn) ([]byte, error) { var head [2]byte if _, err := io.ReadFull(conn, head[:]); err != nil { return err } size := binary.BigEndian.Uint16(head) packet := make([]byte, size) if _, err := io.ReadFull(conn, packet); err != nil { return err } ...阅读全文

博文 2017-02-10 16:35:39 达达

shell脚本中的#是什么意思?aa=$(( 2#1 number | index))最终aa等于多少?

作者简介 作者:小碗汤,一位热爱、认真写作的小伙,目前维护原创公众号:『我的小碗汤』,专注于写linux、golang、docker、kubernetes等知识等提升硬实力的文章,期待你的关注。转载说明:务必注明来源(注明:来源于公众号:我的小碗汤, 作者:小碗汤) 最近在网上看到一个问题: #!/bin/bash number=10 index=20 aa=$(( 2#1 << number | index)) echo ${aa} 执行上面的shell结果是什么? #作用是什么? 首先得弄清楚#是什么意思?网上搜了一大圈没搜到,自己做几个实验看看: [root@liabio test]# [root@liabio test]# echo $((2#000)) 0 [root@liabio...阅读全文

备战CKA每日一题——第5天 | 手动调度、kube-scheduler调度器解析、源码浅析

本活动在微信公众号【我的小碗汤】上举行,有送书活动!这里参与答题不能参与到送书活动哦! 昨日考题 通过命令行,使用nginx镜像创建一个pod并手动调度到节点名为node1121节点上,Pod的名称为cka-1121,答题最好附上,所用命令、创建Pod所需最精简的yaml;如果评论有限制,请把注意点列出,主要需列出手动调度怎么做? 注意:手动调度是指不需要经过kube-scheduler去调度。 昨日答案 将名称为cka-1121的Pod,调度到节点node1121: apiVersion: v1 kind: Pod metadata: name: cka-1121 labels: app: cka-1121 spec: containers: - name: cka-1121 image:...阅读全文

Go语言函数

http://www.jb51.net/article/56831.htm Go语言中的函数有系统函数和自定义函数。 1、系统函数 系统函数就是Go语言自带的函数,系统函数一般根据功能封装在不同的包内,比如Print、Printf、Println都在fmt包内,Abs、Sin都在math包内,Listen、Dial都在net包内等等。如果要使用系统函数,就要引入相关的包。看下面代码: package main import "fmt" import "math" func main() { a := math.Abs(-1) fmt.Println(a) } 其实程序的最初入口main函数其实也是定义在一个包内,就叫main包。 注意:如果没有使用包内的资源而导入这个包,这在Go语言是不允许...阅读全文

博文 2016-10-27 11:00:03 linuxheik

mac安装gdb,lldb遇到的若干问题

今天折腾了下 Golang的调试工具gdb和lldb, 遇到了一些问题, 在这里记录下方便以后查找,也给遇到的小伙伴门一些参考。(只针对macOS系统) 生成证书报错 mac 创建证书 未知错误 = -2147414007 可以先生成一个登陆证书,然后将证书移动到系统那一类就行了 gdb 安装 gdb调试报错 Unable to find Mach task port for process-id 23330: (os/kern) failure (0x5). (please check gdb is codesigned - see taskgated(8)) 如果是 Mojave (10.14) 之前的系统 codesign -fs gdb-cert $(which gdb) #gdb-...阅读全文

博文 2020-03-01 21:32:38 say_leo

Go语言小贴士1 - io包

Go语言作为定位服务端编程的语言,处理文件和网络通讯是它主要的应用场景,不论是处理文件还是处理网络通讯,它们都被称之为IO编程,即-对计算机的输入输出设备进行编程。 Go的运行时有一个名叫io的包,从命名可想而知它在Go语言的实际应用中有多么重要的地位,Go语言的所有IO编程都绕不过这一个包。 所以正确的理解这个包,在Go语言的工程实践中是非常重要的,不论你是准备用Go语言处理文件还是处理网络通讯,请务必先看这个包。 io包中大部分是接口定义,其中io.Reader和io.Writer最为关键。在Go语言中,文件、套接字等一切输入设备抽象,都会实现io.Reader接口,而一切输出设备抽象,都会实现io.Writer接口。 io.Reader的定义如下: type Reader interf...阅读全文

博文 2017-02-10 16:35:19 达达

Effective Go小记一

英文原文:https://docs.huihoo.com/go/golang.org/doc/effective_go.html 阅读小记: 1、go语言使用gofmt统一编码风格,包括排列和缩进。 2、关于注释,文章建议每个package子句之前都应该有关于包的说明,每个方法之前同样要对该方法进行说明;以方便godoc抽取相关内容并展示。 3、命名在go中非常重要,比如首字母是否大写决定在程序包之外的可见性。文章建议包名字均使用小写,力求简洁,包本身是根据路径选择源路径,若包名冲突,可在程序中将冲突的包重命名。 另外,文件对传统上的getter和setter做了自己的观点,认为getter不需要加Get关键字,当然setter加Set关键字是合理的...阅读全文

博文 2019-04-14 22:34:44 Zhang小二

Java8 新特性(一) - Lambda

Java8 新特性(一) - Lambda 近些日子一直在使用和研究 golang,很长时间没有关心 java 相关的知识,前些天看到 java9 已经正式发布,意识到自己的 java 知识已经落后很多,心里莫名焦虑,决定将拉下的知识补上。 Lambda 表达式的渊源 Java8 作为近年来最重要的更新之一,为开发者带来了很多新特性,可能在很多其他语言中早已实现,但来的晚总比不来好。Lambda 表达式就是 Java8 带来的最重要的特性之一。 Lambda 表达式为 Java8 带来了部分函数式编程的支持。Lambda 表达式虽然不完全等同于闭包,但也基本实现了闭包的功能。和其他一些函数式语言不一样的是,Java 中的 Lambda 表达式也是对象,必须依附于一类特别的对象类型,函数式接口...阅读全文

博文 2017-09-27 13:05:32 不智鱼

电商设计手册之基础商品信息

前言 建议使用大屏设备(例如pad/pc),可以更好的浏览本篇文章 今天我们开始「商品系统」的篇章。本文分为如下五大模块: 需求分析 架构设计 Spu和Sku的故事 数据模型设计 接口设计 第一篇我们主要看看一个入门的电商平台(B2C)如何去构建自己的基础商品信息,其实这个事情很简单,想想我们的现实生活,商家摆放商品到货架,客户从货架挑选商品,客户把挑选好的商品放入购物车(篮),最后客户去收银台结账。 需求分析 对于一个电商平台来讲,我们怎么理解上面的简单示例呢?接着,我们来拆分上面这个简单的事情: 商家摆放商品到货架,客户从货架挑选商品,客户把挑选好的商品放入购物车(篮),最后客户去收银台结账 商家是谁:电商平台 摆放是什么意思:上架 货架在哪:前台系统(web/app/...) 挑选:浏...阅读全文

leetcode 第163场周赛

5263. 二维网格迁移 给你一个 n 行 m 列的二维网格 grid 和一个整数 k。你需要将 grid 迁移 k 次。 每次「迁移」操作将会引发下述活动: 位于 grid[i][j] 的元素将会移动到 grid[i][j + 1]。 位于 grid[i][m - 1] 的元素将会移动到 grid[i + 1][0]。 位于 grid[n - 1][m - 1] 的元素将会移动到 grid[0][0]。 请你返回 k 次迁移操作后最终得到的 二维网格。 拿golang刷题简直有病 执行结果:通过 执行用时 :32 ms, 在所有 golang 提交中击败了100.00%的用户 内存消耗 :6.2 MB, 在所有 golang 提交中击败了100.00%的用户 func pos(n int,...阅读全文

go 学习笔记之值得特别关注的基础语法有哪些

在上篇文章中,我们动手亲自编写了第一个 `Go` 语言版本的 `Hello World`,并且认识了 `Go` 语言中有意思的变量和不安分的常量. 相信通过上篇文章的斐波那契数列,你已经初步掌握了 `Go` 语言的变量和常量与其他主要的编程语言的异同,为了接下来更好的学习和掌握 `Go` 的基础语法,下面先简单回顾一下变量和常量相关知识. ## 有意思的变量和不安分的常量 - 变量默认初始化有零值 ```go func TestVariableZeroValue(t *testing.T) { var a int var s string // 0 t.Log(a, s) // 0 "" t.Logf("%d %q", a, s) } ``` > `int` 类型的变量初始化默认零值是零 `...阅读全文

博文 2019-08-24 17:12:39 snowdreams1006

Go语言小贴士2 - 协议解析

今天这个小贴士主要介绍协议解析的一些知识,Go语言作为服务端编程语言,免不了要涉及到通讯协议解析,即便不是做网络通讯,也难免会涉及到文件解析,其实它们的知识点都是一样的。 现实应用场景中,通讯协议按通常可以分为两类:二进制协议和文本协议。Go语言内置的gob格式就是一种二进制协议,而JSON、XML等则是文本协议。 假设我们要发送123这个数值,用二进制协议只需要一个字节,因为一个字节(byte)有8个二进制位(bit),2的8次方是256,一个字节可以表达0-255之间的任意值,共256种可能性。 如果我们用文本协议发送123这个数值,则需要至少三个字节,因为123这个数字需要转换成字符'1'、'2'、'3'这三个ASCII字符,存入三个字节中。 所以同样一个数据,用二进制协议表达的体积通...阅读全文

博文 2017-02-10 16:35:27 达达

go to definition 总是提示 rebuild fix 解决办法

刚拷贝来工程的时候,go to definition 总是报错误;然而编译也通过了;查了很多资料,自己解决了,解决方法如下:(1)把 options for target 配置下的 output里的 select folder for objects 选择目录下的文件全部删掉(2)把listing菜单栏的里的select folder for listing...和select folder for objects目录选择一样的目录然后在rebuild就可以成功了,如果不成功的小伙伴可以先确认你的文件路径有没有对,还不行可以在其他的地方重新复制一份执行在操作...阅读全文

博文 2019-04-28 14:35:10 我叫妄想

备战CKA每日一题——第8天 | initContainer概念、用法、使用场景简介;k8s secret env、volume考题引出

本活动在微信公众号【我的小碗汤】上举行,有送书活动!这里参与答题不能参与到送书活动哦! 昨日考题 提供一个pod的yaml,要求添加Init Container,Init Container的作用是创建一个空文件,pod的Containers判断文件是否存在,不存在则退出 注意:附带Pod完整yaml 昨日答案 apiVersion: v1 kind: Pod metadata: labels: run: cka-1126 name: cka-1126 spec: initContainers: - image: busybox name: init-c command: ['sh', '-c', 'touch /tmp/cka-1126'] volumeMounts: - name: wo...阅读全文

备战CKA每日一题——第4天 | 熟练掌握kubectl命令进行创建资源对象操作,并从源码进行解析

本活动在微信公众号【我的小碗汤】上举行,有送书活动!这里参与答题不能参与到送书活动哦! 昨日考题 通过单个命令创建一个deployment并暴露Service。deployment和Service名称为cka-1120,使用nginx镜像, deployment拥有2个pod 昨日答案 [root@liabio ~]# kubectl run cka-1120 --replicas 2 --expose=true --port=80 --image=nginx kubectl run --generator=deployment/apps.v1 is DEPRECATED and will be removed in a future version. Use kubectl run --g...阅读全文

备战CKA每日一题——第7天 | deployment的升级、回滚、滚动更新策略、roll、set image命令解释、initContainer考题

本活动在微信公众号【我的小碗汤】上举行,有送书活动!这里参与答题不能参与到送书活动哦! 昨日考题 通过命令行,创建1个deployment,副本数为3,镜像为nginx:latest。然后滚动升 级到nginx:1.9.1,再回滚到原来的版本 要求:Deployment的名称为cka-1125,贴出用到的相关命令。 最好附带创建的Deployment完整yaml,以及和升级回滚有关的命令。 昨日答案 先创建deployment,可以用命令创建: kubectl run cka-1125 --image=nginx --replicas=3 也可以用以下yaml:cka-1125.yaml创建 apiVersion: apps/v1 kind: Deployment metadata: lab...阅读全文

Go 之旅二: 流程控制语句

学习 A Tour of Go (中文参考 Go 之旅中文 ) 整理的笔记。介绍流程控制语句 for, if, else, switch 和 defer 的基本概念和使用。 1. for $GOPATH/src/go_note/gotour/flowcontrol/for.go 源码如下: /** * go 语言for 循环 */ package main import ( "fmt" ) func main() { sum := 0 for i := 0; i < 10; i ++ { sum += i } fmt.Println("sum:", sum) // sum: 45 // 初始化语句和后置语句是可选的 sum = 1 for ; sum < 1000; { sum ...阅读全文

博文 2017-03-10 05:50:23 xugang

A Tour of Go: Basics 2

For For语句有三个基本部分组成,以分号隔开: 初始语句:只在第一次循环开始前执行,通常就是变量定义和初始化,这里定义的变量作用范围只在For循环本身。 条件表达式:每一次循环开始前执行,当false结束循环。 post语句:每一次循环结束后执行。 技巧: 初始语句和post语句是可以省略的。 条件表达式也可以省略,就是死循环。 Go语言只有一个循环结构,就是for语句。while语句在Go中也是由for表示。 // for sum := 1 for ; sum < 1000; { sum += sum } // while sum := 1 for sum < 1000 { sum += sum } 注意点: 与其他语言不同,三个语句不需要用括号括起来。 循环体需要用大括号括起来。 I...阅读全文

博文 2018-10-07 22:35:14 zxdevops

go语言渐入佳境[5]-printf格式化打印

golang输出的格式化打印1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950package mainimport "fmt"func main(){ //通用的格式 str:="jonson" fmt.Printf("%T,%v\n",str,str) //布尔 var booeanl = true fmt.Printf("%T,%t\n",booeanl,booeanl) //特殊字符 fmt.Printf("%%\n") fmt.Printf("\"\n") fmt.Printf("\\\n") //整数 fmt.Printf("%T,%d\n",123,...阅读全文

博文 2018-12-04 00:35:13 jonson_jackson

【Go学习笔记】 3、Go 类型与变量

基本类型 布尔型:bool 长度 : 1字节 取值范围:true ,false 整型:int/uint 根据运行平台可能为32位或64位 8位整型:int8/uint8 长度:1字节 取值范围:-128~127/0~255 字节型:byte (uint8别名) 16位整型:int16/unint16 长度:2字节 32位整型:int32(rune)/uint32 长度:4字节 64位整型:int64/uint64 长度:8字节 浮点型:float32/float64 长度:4/8字节 小数位:精确到7/15小数位 复数:complex64/complex128 长度:8/16字节 足够保存指针的32位或64位整数型:uintptr 其他值类型: array、struct、string 引用类...阅读全文

好程序员web前端分享:如何理解web语义化?

好程序员web前端分享:如何理解web语义化?首先,在理解之前,我们需要先了解,什么是语义化。所谓语义化,简单来说,就是能够更清晰,更直观的理解语言所要表达的含义,所谓词必达意就是这个意思。那么在开发过程中的语义化指的是什么呢?就是能够让除了当事开发者能快速熟悉代码之外,最主要的就是让机器更方便的读懂代码。 那么有得童鞋就要说了,想要让同事一目了然的读懂我们的代码,那么最方便的不应该是中文编程么?这里要说句,太天真了。我们的代码都是运行在计算机中,不论基于的环境如何;而计算机在进行各种运算的过程中,需要讲我们输入的文本转成特定的编码格式,如果使用英文编程,我们写出花来也不过26个字母,而中文的博大精深这里就不做赘述,况且各类编程语言的发明者都是歪果仁呢。 那么web语义化有何好处呢?首先语义...阅读全文

博文 2019-03-29 16:00:48 hcxy

Golang学习——如何判断Golang接口是否实现?

前言 在看一个底层库的的时候,看到了一个比较奇怪的写法,于是乎有了本文。 主要探讨两个问题: 1.利用编译来判断Golang接口是否实现 2.延伸出的make和new的区别 正文 1.利用new()来判断Golang接口是否实现 看了一个底层通用链接池的库,有这么一行代码: var _ Pooler = new(WeightedRoundRobin) 复制代码 需要解释的是:Pooler是一个接口类型。 type Pooler interface { // ... } 复制代码 刚开始看是疑惑的,为什么new了之后是要抛弃调? 后面发现这个是为了验证某某接口是否被实现了? 多看了一些代码后发现很多地方有类似这样的写法。 至此Get到了。 解释:如果说次接口没有被实现,那么一方面ide会有红横...阅读全文

博文 2020-05-03 00:34:22 相守之路

Golang Basic 2

Golang Basic 2 for Go 只有一种循环结构,for循环 基本的for循环由三部分组成,他们用分号隔开: 初始化语句:在第一次迭代前执行 条件表达式:在每次迭代前求值 后置语句:在每次迭代的结尾执行 初始化语句通常为一句短变量声明,该变量声明仅在for语句的作用域中可见。 一旦条件表达式的布尔值为false,循环迭代就会终止。 注意:和C、Java、JavaScript之类的语言不通,Go中的for语句后面的三个构成部分没有小括号,大括号{}则是必须的。 package main import "fmt" func main() { sum := 0 for i:=0; i < 10; i++ { sum += i } fmt.Println(sum) } 初始化语句和后置语...阅读全文

博文 2019-03-18 23:34:41 Wenchao

备战CKA每日一题——第3天 | 对接CSI存储知识

本活动在微信公众号【我的小碗汤】上举行,这里参与答题无效哦! 昨日考题 在Kubernetes PVC+PV体系下通过CSI实现的volume plugins动态创建pv到pv可被pod使用有哪些组件需要参与? A. PersistentVolumeController + CSI-Provisoner + CSI controller plugin B. AttachDetachController + CSI-Attacher + CSI controller plugin C. Kubelet + CSI node plugin 昨日答案 ABC 昨日解析 k8s中,利用PVC 描述Pod 所希望使用的持久化存储的大小,可读写权限等,一般由开发人员去创建;利用PV描述具体存储类型,存储...阅读全文

A Tour of Go: Basics 1

Packages, variables and functions Packages packages中,以大写字母开头的name是exported name,当import package时,只有exported name可以被从外部访问。 Functions 同type的连续参数可以只在最后指明type。函数可以有多个返回值。 func swap(x, y string) (string, string) { return y, x } Go支持有name的返回值: 函数定义时就定义好返回变量名,在函数内操作返回变量。 用naked return语句返回。 func split(sum int) (x, y int) { x = sum * 4 / 9 y = sum - x retur...阅读全文

博文 2018-10-07 17:35:15 zxdevops

【Golog】包

正文 package main import ( "fmt" "math/rand" ) import "math/cmplx" func main() { fmt.Printf("Now you have %g problems.\n", math.Sqrt(7)) } 这里这个头部有的这个package main有点像Java一样,这里的主函数入口func main()暂时没看到类型和返回值。 但是按照官网import支持两种方式一个是小括号,还有就是支持像python那样的一个一个import。感觉用小括号更好看吧。引入规则也是一样的可以引入包下的某部分如:math/rand。暂时不清楚能不能像c++一样指定自己在某个文件夹下的包。 可以看到这里的输出是类似c的那种输出形式。不知道有没...阅读全文

博文 2020-05-05 17:32:43 石渊友