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

【GoLang笔记】浅析Go语言Interface类型的语法行为及用法

Go不是一种典型的OO语言,它在语法上不支持类和继承的概念。 没有继承是否就无法拥有多态行为了呢?答案是否定的,Go语言引入了一种新类型—Interface,它在效果上实现了类似于C++的“多态”概念,虽然与C++的多态在语法上并非完全对等,但至少在最终实现的效果上,它有多态的影子。 那么,Go的Interface类型到底是什么呢?怎么使用呢?这正是本篇笔记试图说明的问题。 1. Method(s) in Go 在说明Interface类型前,不得不先用Go的method(s)概念来热身,因为Go语言的interface与method(s)这两个语法有非常紧密的联系。 虽然Go语言没有类的概念,但它支持的数据类型可以定义对应的method(s)。本质上说,所谓的method(s)其实就是函数...阅读全文

博文 2015-03-23 11:00:06 slvher

<三> go 枚举

在go语言中,没有直接支持枚举的关键字,也就造成go没有直接枚举的功能。但是go提供另一种方法来实现枚举,那就是const+iota // 实现枚举例子 type State int // iota 初始化后会自动递增 const ( Running State = iota // value --> 0 Stopped // value --> 1 Rebooting // value --> 2 Terminated // value --> 3 ) func (this State) String() string { switch this { case Running: return "Running" case Stopped: return "Stopped" default:...阅读全文

博文 2015-11-20 09:00:01 a11101171

go语言25个关键字总结

var和const :变量和常量的声明 var varName type 或者 varName : = value package and import: 导入 func: 用于定义函数和方法 return :用于从函数返回 defer someCode :在函数退出之前执行 go : 用于并行 select 用于选择不同类型的通讯 interface 用于定义接口 struct 用于定义抽象数据类型 break、case、continue、for、fallthrough、else、if、switch、goto、default 流程控制 chan用于channel通讯 type用于声明自定义类型 map用于声明map类型数据 range用于读取slice、map、channel数...阅读全文

博文 2014-10-04 19:26:29 T_star

golang中defer的执行

golang中defer的执行 大家都知道golang的defer关键字,它可以在函数返回前执行一些操作,最常用的就是打开一个资源(例如一个文件、数据库连接等)时就用defer延迟关闭改资源,以免引起内存泄漏。例如: func do() (ok bool) { file,_ := os.Open("c:\a.txt") defer file.Close() // doSomething return ok } 我们可以在官方的文档中看到defer的执行顺序是逆序的,也就是先进后出的顺序: for i := 0; i < 5; i++ { defer fmt.Printf("%d ", i) } 打印结果是:4,3,2,1,0 那么再看这个例子: func deferRet(x,y int) ...阅读全文

博文 2014-10-04 19:26:10 wowzai

李嘉璇:技术人如何深入人工智能

前不久趣直播举办了一场技术人成长交流会,邀请了《TensorFlow 技术解析与实战》作者李嘉璇来分享。以下是视频:以下是文字版:谢谢智维的介绍,介绍的太棒了,我其实没有他说的那么棒,让我压力好大,尤其巧哥又讲的那么好我目前主要是做人工智能方向的,比较熟悉的是 TensorFlow,我有写过一本书,《TensorFlow 技术解析与实战》,我这里面再多说两句,因为有非常多的人会问我,你是怎么写出一本书的?或者说你写出一本书遇到什么样的困难?我现在面试的时候就会有人问我这样的问题,会经常让我去说这个事,我跟大家分享一下。我在写这本书的时候,我脑子里没有第二件事了,我说的第二件事就包括吃饭和睡觉上厕所,脑子里没有这些,就是在我的意识里,这些东西都不存在的。我眼里只有这一件事,我活着就是为了写书这...阅读全文

golang 里面指针符号的*和&

先看一段代码先放一段代码,人工运行一下,看看自己能做对几题?package main import "fmt" func main() { var a int = 1 var b *int = &a var c **int = &b var x int = *b fmt.Println("a = ",a) fmt.Println("&a = ",&a) fmt.Println("*&a = ",*&a) fmt.Println("b = ",b) fmt.Println("&b = ",&b) fmt.Println("*&b = ",*&b) fmt.Println("*b = ",*b) fmt.Println("c = ",c) fmt.Println("*c = ",*c) fmt....阅读全文

博文 2017-02-10 10:21:28 ohgenlong

腾讯云360元 6年时长最新完整方案

腾讯云新用户认证学生身份可享受1核CPU、2G内存、1M带宽的云服务器10元/月的价格。 同时买1年(120元)送4个月,特价续费两年(120元*2),共支出360元。 得到3年的特价学生云服务器,然后在控制面板降配,会获得5年左右的时长。 具体步骤: 1、准备一个未购买过腾讯云的新账号,新注册QQ也可。 2、进入参团链接:https://cloud.tencent.com/act/campus/group/detail?group=20561 3、登陆腾讯云账号,进行实名认证(这个带参团性质,貌似需要参团才可以参与) 4、进行学生认证,(随便填就可以):https://cloud.tencent.com/act/campus/student_ver...阅读全文

Google AI 中国中心在北京成立,由李飞飞李佳领导

AI 科技评论消息,12 月 13 日,在今天开幕的谷歌开发者大会上,谷歌 Cloud 人工智能和机器学习首席科学家李飞飞宣布,Google AI 中国中心(Google AI China Center)于北京正式成立。该中心由李飞飞和 Google Cloud 研发负责人李佳博士共同领导。李飞飞将会负责中心的研究工作,也会统筹 Google Cloud AI, Google Brain 以及中国本土团队的工作。据李飞飞现场表示,谷歌 AI 中国中心也非常期待能在中国本土合作上有所建树,为更广大的学生及研究人员提供高质量 AI 及机器学习的教育支持。Google AI 中国中心的研究重点是基础 AI 研究,并与中国 AI 学术界建立长期合作的紧密联系。李飞飞表示,Google AI 中国中心...阅读全文

博文 2017-12-13 04:17:57 奕欣

腾讯云360元 6年时长完整方案

腾讯云新用户认证学生身份可享受1核CPU、2G内存、1M带宽的云服务器10元/月的价格。 同时买1年(120元)送4个月,特价续费两年(120元*2),共支出360元。 得到3年的特价学生云服务器,然后在控制面板降配,会获得5年左右的时长。 具体步骤: 1、准备一个未购买过腾讯云的新账号,新注册QQ也可。 2、进入参团链接:https://cloud.tencent.com/act/campus/group/detail?group=16924 3、登陆腾讯云账号,进行实名认证(这个带参团性质,貌似需要参团才可以参与) 4、进行学生认证,(随便填就可以):https://cloud.tencent.com/act/campus/student_ver...阅读全文

腾讯云360元 6年时长最新完整方案, 亲测

腾讯云新用户认证学生身份可享受1核CPU、2G内存、1M带宽的云服务器10元/月的价格。 同时买1年(120元)送4个月,特价续费两年(120元*2),共支出360元。 得到3年的特价学生云服务器,然后在控制面板降配,会获得5年左右的时长。 具体步骤: 1、准备一个未购买过腾讯云的新账号,新注册QQ也可。 2、进入参团链接:https://cloud.tencent.com/act/campus/group/detail?group=21901 3、登陆腾讯云账号,进行实名认证(这个带参团性质,貌似需要参团才可以参与) 4、进行学生认证,(随便填就可以):https://cloud.tencent.com/act/campus/student_ver...阅读全文

go - 继承

1 方法的继承 在go中没有继承的关键字,但是我们可以通过interface这个类型做出继承的效果,看如下代码,Car就继承了Start和Stop这两个方法 import ( "fmt" ) type Engine interface { Start() Stop() } type Car struct { Engine } func (this *Car) Start() { fmt.Println("Car->Start()") } func main() { fmt.Println("Start Main func()") car := new(Car) car.Start() } 2 成员变量的继承 相当与定义Person人这个类,然后定义男人Man继承人的姓名,年龄这个两个成员属性...阅读全文

博文 2015-11-16 17:00:01 a11101171

golang 中的 type switch 类型判断

golang 语言中 也有 类是 javascript 的 typeof 判断类型的 方法 比如 func (a interface{}){ //第一种 if inst,ok:=a.(TypeA);ok{ inst.MethodA() } //第二种 switch inst:=a.(type){ case TypeA: inst.MethodA() default: fmt.Println("unknow") } } a可能是任意类型 a.(某个类型) 返回两个值 inst 和 ok ,ok代表是否是这个类型,Ok如果是 inst 就是转换后的 类型 a.(type) type是关键字 结合switch case使用 TypeA(a) 是强制转...阅读全文

博文 2014-10-04 19:26:55 健哥大人

大数据全攻略:10年老兵带你看尽MaxCompute大数据运算挑战与实践

大数据计算服务(MaxCompute,原名ODPS)是一种快速、完全托管的TB/PB级数据仓库解决方案。MaxCompute向用户提供了完善的数据导入方案以及多种经典的分布式计算模型,能够更快速的解决用户海量数据计算问题,有效降低企业成本,并保障数据安全。 产品地址:https://www.aliyun.com/product/odps 概况介绍: 以下为本套攻略的内容目录,查看每篇文章详细内容请查看:http://click.aliyun.com/m/26509/ 性能追求之路——MaxCompute2.0(原ODPS)的前世今生 10年老兵带你看尽MaxCompute大数据运算挑战与实践 什么是阿里云数加大数据计算服务MaxCompute? ...阅读全文

[上海]AngelHack人工智能沙龙

# [AngelHack人工智能沙龙](http://www.huodongxing.com/event/7441786899200) > [早鸟票免费, 点击这里报名](http://www.huodongxing.com/event/7441786899200) ## 介绍 AngelHack作为全球最大的黑客马拉松社区, 旨在为开发者或任何其它喜欢科技喜欢编程的人提供一个实现想法的平台, 以及提供各种提高开发技能和开发理念的机会. 人工智能正在重塑世界. 游戏, 围棋, 语音识别, 图像识别, 语言翻译... 人工智能渗透了现代社会的方方面面. 无论你是在校学生, 科研工作者, 开发者, 或者任何行业的人, 都应该积极了解和拥抱人工智能, 保持与时代同步. ...阅读全文

【互联网早报】2017.10.25

## ??国内新闻?? 1. 从入门到倒闭,共享汽车算是快黄了; http://dwz.cn/6ItKTo 2. 科学家将机器学习技术用于地震预测,未来或能更高效预测这类灾害的发生; http://www.dwz.cn/6IttVt 3. PaaS平台中搜云悦获2000万元融资,或将谋求独立上市。 http://dwz.cn/6Itvxa ## ? 国际新闻? 1. 清扫第三方app漏洞:谷歌发起新“除虫奖赏计划”; http://dwz.cn/6Itwkx 2. AirDroid推出iOS版,从此iPhone与PC传输无距离; http://dwz.cn/6Itl9w 3. 将枯燥文本自动转化成趣味视频,AI创企Wibbit...阅读全文

【互联网早报】2017.10.20

## ??国内新闻?? 1. 柯洁回应新版本AlphaGo问世:人类太多余了; http://dwz.cn/6Gwup1 2. 花呗启动临时提额,八成用户天猫双11人均可多花2200元; http://dwz.cn/6Gwtqf 3. 吴恩达出任Woebot董事长,再度出手医疗领域帮人们治疗抑郁症。 http://dwz.cn/6GwhHh ## ? 国际新闻? 1. 苹果发表机器学习文章,介绍“嘿 Siri”背后的故事; http://dwz.cn/6GwitC 2. 英特尔开发新系统:自动驾驶犯错了也不会造成事故; http://dwz.cn/6GwgH0 3. Gartner:2020年全球云计算市场规模将达4110亿美元。...阅读全文

Golang 简单的启用一个线程

// code by shaoyongyang package main import ( "fmt" "time" ) func say(s string) { fmt.Println(s) } func main() { go say("who are you?") go say("who are you?1") fmt.Println(2) time.Sleep(1e9) } 好吧,我之前都在想为什么say方法里面没有任何输出,查了很多资料后发现,是因为程序已经结束运行了,启动的线程还在运行。 在最后面加入线程休眠时间就可以了。 启用一个线程仅仅 go say("see i am new thread") ,仅仅使用go关键字即...阅读全文

博文 2015-02-01 08:00:01 未来还没来

Golang分布式唯一ID生成库go-snowflake

[![GuaikOrg/go-snowflake](https://gitee.com/GuaikOrg/go-snowflake/widgets/widget_card.svg?colors=ffffff,1e252b,323d47,455059,d7deea,99a0ae)](https://gitee.com/GuaikOrg/go-snowflake) # ❄️ GO-Snowflake ## Snowflake简介 在单机系统中我们会使用自增id作为数据的唯一id,自增id在数据库中有利于排序和索引,但是在分布式系统中如果还是利用数据库的自增id会引起冲突,自增id非常容易被爬虫爬取数据。在分布式系统中有使用uuid作为数据唯一id的,但是uuid是一串随机字符串...阅读全文

95后大学生用机器学习PAI大战老年痴呆

摘要:燕山大学信息科学与技术专业出身的95后大学生谭创创,没想到自己会与阿尔茨海默症(俗称“老年痴呆症”)为“敌”。 除了上课,他每天主要的工作,是用人工智能技术分析阿尔茨海默症。过去,大学生做研究主要使用自己的计算机,或者学校的实验室设备,而谭创创则与社会接轨,他的“武器”来自于亚洲最大云计算服务商——阿里云。 2015年上半年,刚刚大一的谭创创闯入了机器学习的世界。他向学校的文冬教授表达了想要参与科研的意愿。此后,他开始运用机器学习算法来研究阿尔茨海默症的诊断。 文冬解释说,通常一次诊断可能需要做十几个量表(根据病人答题情况判断疾病——记者注),耗费大量时间,病人有时也难以坚持。加之病情轻微时,片子上无法准确呈现哪里病变,就会降低诊断效率与准确性。“机器学习可以提高发现...阅读全文

最全知乎专栏合集:编程、python、爬虫、数据分析、挖掘、ML、NLP、DL...

(本文先简单罗列下,后续要是有好的展示方式,会进行调整)上一篇文章《爬取11088个知乎专栏,打破发现壁垒》 里提到,知乎官方没有搜素专栏的功能,于是我通过爬取几十万用户个人主页所专注的专栏从而获取到11088个知乎专栏。本回筛选出涉及:编程、python、爬虫、数据分析、挖掘、ML、NLP、DL等关键词的专栏,按照排名、关注人数、专栏名称、专栏简介等顺序,罗列出史上最全专栏合集,以供大家顺藤摸瓜、前去观摩和学习。 筛选出来的专栏数据和全部11088个专栏数据,评论区有获取方式。对其他主题的专栏感兴趣的可自行去搜寻,有兴致搞出个“专栏”搜索功能的小伙伴也可以尝试下!另外已开始对11088个专栏里的数据进行进一步爬取,之后会继续相关分析和资源分享。TOP29系列,1万+关注:No.1, 157...阅读全文

300+篇阿里技术热点解析及珍贵技术资料免费下载(文章+PDF+视频,持续更新)

摘要: 2017年已过去一半,在此小编为大家精心整理了2017上半年技术热点事件解析、实战技术资料下载以及特别策划技术热点短视频系列集合,因为资料集合过于庞大,分批放出,还请持续关注。 2017年已过去一半,在此小编为大家精心整理了2017上半年热点事件解析、实战技术资料以及特别策划短视频系列,希望可以帮助大家更深入地回顾上半年的技术热点,并储备更充足的技术干粮继续2017的下一半。 热点事件解析 “新SaaS”引爆产业奇点《2017中国SaaS用户研究报告》 免费下载!业界首部安卓热修复宝典出炉,阿里技术大牛联袂推荐 业界首个非侵入式热修复方案Sophix重磅推出,颠覆移动端传统更新流程! 技术分析 | 新型勒索病毒Petya如何对你的文件进行加密 [...阅读全文

深度学习第一课

近几年深度学习的概念非常火,我们很幸运赶上并见证了这一波大潮的兴起。记得2012年之前提及深度学习,大部分人并不熟悉,而之后一段时间里,也有些人仍旧持怀疑的态度,觉得这一波浪潮或许与之前sparse coding类似,或许能持续火个两三年,但终究要被某个新技术新方法所取代,再后来,无论是学术界还是工业界,总有些研究者为自己没有在第一时间跟进这波浪潮感到后悔莫及。确实,从2012年AlexNet取得ImageNet的冠军开始,五年过去了,深度学习的方法仍旧占领着人工智能这片领域。 随着这波浪潮,有些人作为弄潮儿,兴起一波波巨浪,引领各个领域从传统方法到深度学习方法的转变,并希望能够通过了解其他领域的方法改进自己所从事的领域;有些人辛勤地工作,利用深度学习的方法为公司提高业绩,希望实时跟进并实现...阅读全文

博文 2017-06-24 09:52:16 PaddlePaddle开源团队

空接口(interface {})类型判断

空接口可以存储任意类型的数据,当需要判断到底是何种类型时,可以使用以下方法。 1 直接断言 比如我们收到一个类型为interface{}的变量unknown,可以通过如下代码直接断言是否为string类型: val, ok := unknow.(string) 如果返回ok为true,则变量unknown为string类型,同时返回一个val存储string类型的值。如果我们确定unknown为string类型,也可以不返回ok变量,直接强转获取其值: val := unknow.(string) 但是使用这种方法有一定的风险,如果不是string类型,会发生panic: panic: interface conversion: interface {} is int, not string...阅读全文

博文 2019-08-01 21:02:45 moonbamboo

暑期实习求职经历总结——于2019.06.01

下个周一就要入职字节跳动过上10105.5(大小周,大周6天,小周5天,早10点~晚10点)的生活了,趁着现在还有点空,总结一下自己的暑期实习求职经历。 我的暑期实习求职过程始于三月份的一堂中特课,在那堂课上给百度、华为、腾讯等诸多企业都投了简历。因为这些企业面试流程挺长的,自己也弄不清楚是还要等通知呢还是已经被刷了,而且互联网公司又很喜欢集中在三四月份开始招暑期实习,一方面抱着广撒网的心态,一方面又怕自己错过这一波招聘后面就不好去大厂实习了,所以前前后后我投了大概二十几家公司。先说一下结果,因为自己是车辆工程研究生才转行,而且研究生方向不是很好(一开始没选好,后来也不太好换了。。),所以其实不怎么敢投一些算法岗,基本都是开发岗,算法岗就投了momenta、华为的自动驾驶开发岗和虎牙直播的机...阅读全文

博文 2019-06-01 01:34:39 BBBBBigOrange

Golang关键字—— if/else

Golang中,if/else 关键字用于条件判断,如果满足条件就做某事,否则做另一件事: if age >= 18 { fmt.Println("成年人") } else { fmt.Println("未成年") } 多重判断: if score >= 90 { fmt.Println("优秀") } else if score >= 70 { fmt.Println("良好") } else if score >= 60 { fmt.Println("一般") } else { fmt.Println("差") } Golang允许在条件判断语句里声明一个变量,该变量的作用域只在该条件逻辑块内: if score := 40; score >= 90 { fmt.Println("优秀:...阅读全文

博文 2015-05-21 10:00:00 nianhua

微信web协议/微信机器人wechat/go

## wechat-go go version wechat web api * 支持多用户(多开) * 防掉线 * 功能以插件的形式提供,可以根据用户(比如付费情况)选择加载或者不加载某插件 * 对于加载的插件, 用户可以通过微信动态开启/关闭. * 目前已提供头像识别, gif搜索, 笑话大全, 阅后即焚等多个有趣插件 * 插件编写简单, 二次开发极为方便 * 可以发送图片/文字/gif/视频/表情等多种消息 ## Install go get -u -v github.com/songtianyi/wechat-go ## golang.org/x dep install mkdir $GOPATH/src/golang.org/x cd...阅读全文

高级语言流派与python发展

一、高级语言的流派人类代码———>翻译———>机器语言人类代码<———翻译<———机器语言1、流派一:编译型语言执行流程:人类代码——一次性把代码给翻译官(翻译器)——汇编语言——机器语言语言代表:C、C++、golang优点:执行速度快缺点:跨平台可移植性差(基于intel开发的程序,无法移植在ARM平台使用) 硬件平台:CPU,有自己的指令规则。 intel、AMD :cpu属于复杂指令集,高性能高功耗 ARM :cpu属于简单指令集,手机、平板、低功耗 软件平台:windows、linux、mac系统平台不一样,指令操作不同2、流派二:解释性语言执行流程:人类代码——边执行边翻译,陪同翻译(解释器、虚拟机)——机器语言语言代表:python、java、php、ruby、c#优点:跨平台...阅读全文

博文 2019-10-15 20:34:34 aside section ._1OhGeD

Go 编译器介绍

cmd/compile 包含构成 Go 编译器主要的包。编译器在逻辑上可以被分为四个阶段,我们将简要介绍这几个阶段以及包含相应代码的包的列表。 在谈到编译器时,有时可能会听到前端front-end和后端back-end这两个术语。粗略地说,这些对应于我们将在此列出的前两个和后两个阶段。第三个术语中间端middle-end通常指的是第二阶段执行的大部分工作。 请注意,go/parser 和 go/types 等 go/* 系列的包与编译器无关。由于编译器最初是用 C 编写的,所以这些 go/* 包被开发出来以便于能够写出和 Go 代码一起工作的工具,例如 gofmt 和 vet。 需要澄清的是,名称 “gc” 代表 “Go 编译器Go compiler”,与大写 GC 无关,后者代表垃圾收集g...阅读全文

博文 2018-09-04 11:31:04 mvdan

趣头条基于 Flink 的实时平台建设实践

本文由趣头条实时平台负责人席建刚分享趣头条实时平台的建设,整理者叶里君。文章将从平台的架构、Flink 现状,Flink 应用以及未来计划四部分分享。 一.平台架构 1.Flink 应用时间线 首先是平台的架构,2018 年 3 月之前基本都是基于 Storm 和 Spark Streaming 来做的。目前,基本已经把 Spark Streaming 和 Storm 淘汰了,主要都是 Flink SQL 来做的。起初还比较传统,一般是接需求然后开发类似于 Flink SQL 的任务,基本是手工作坊操作模式。 后来 Flink SQL 的任务逐渐多了起来,就开始考虑往平台化方向发展。大概在 2018 年 10 月份,我们开始搭建实时平台。当时设计实时平台时就直接抛弃了 Spark Strea...阅读全文

机器学习和算法

机器学习和算法 github上的仓库地址: [机器学习](https://github.com/KeKe-Li/tutorial/blob/master/README.md) 最近以来一直在学习机器学习和算法,然后自己就在不断总结和写笔记,记录下自己的学习AI与算法历程。 机器学习(Machine Learning, ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。 * 机器学习是计算机科学的一个子领域,在人工智能领域,机器学习逐渐发展成模式识别和计算科学理论的研究。 * 机器学习:多领域交叉学科,涉及概率论统计学,逼近论...阅读全文

c语言客户端与golang服务端通信(网络字节序)

网络二进制数据转换: 总所周知,数据在tcp网络传输协议中传输的字节序是大端模式的,换句话说如果你要传输一个int32型的整数,那么假设其二进制小端模式表示为11111111111111110000000000000000那么其大端模式表示为00000000000000001111111111111111,利用c语言的htonl函数会将数据字节序转换成大端模式,在网络上面传输,接收端想解出原始数据只需要认为发送来的数据是大端模式,按照大端模式表示的数据解析便可 举个例子: 在C语言端发送一个int32_t数据过程如下: 发送端(c语言) char buf[100]; int32_t x = 100; ((int*)buf)[0] = htonl(x); send(clientfd, buf,...阅读全文

博文 2016-02-26 03:00:01 candycloud

Golang实现简单tcp服务器04 -- 服务器的粘包处理

服务器的粘包处理 什么是粘包 一个完成的消息可能会被TCP拆分成多个包进行发送,也有可能把多个小的包封装成一个大的数据包发送,这个就是TCP的拆包和封包问题 TCP粘包和拆包产生的原因 应用程序写入数据的字节大小大于套接字发送缓冲区的大小 进行MSS大小的TCP分段。MSS是最大报文段长度的缩写。MSS是TCP报文段中的数据字段的最大长度。数据字段加上TCP首部才等于整个的TCP报文段。所以MSS并不是TCP报文段的最大长度,而是:MSS=TCP报文段长度-TCP首部长度 以太网的payload大于MTU进行IP分片。MTU指:一种通信协议的某一层上面所能通过的最大数据包大小。如果IP层有一个数据包要传,而且数据的长度比链路层的MTU大,那么IP层就会进行分片,把数据包分成托干片,让每一片都...阅读全文

博文 2015-06-02 23:00:16 victoriest

golang笔记-注释-标识符

Go语言注释 行注释://xxxxxx 块注释:/* xxxxxx */ Go语言关键字,严格区分大小写。 1.break 2.default 3.func 4.interface 5.select 6.case 7.defet 8.go 9.map 10.struct 11.chan 12.else 13.goto 14.package 15.switch 16.const 17.fallthrough 18.if 19.range 20.type 21.contiue 22.for 23.import 24.return 25.var Go语言预定义标识符 1.append 2.bool 3.byte 4.cap 5.close 6.complex 7.complex64 8.compl...阅读全文

博文 2016-04-09 23:00:01 golangerblog

最强围棋程序Alpha Go 浅析

最强围棋程序Alpha Go 浅析 去年谷歌的围棋程序Alpha Go一举打败所有已知的围棋AI程序,以及以5:0的大比分打败了专业棋手Fan Hui。随后在《nature》上报到了Alpha Go 的内幕。作为一个伪的围棋爱好者和一个机器学习爱好者,看了该文章,并看了其他的分析,写下自己的心得: 围棋的智能对弈程序最早当属我国的手谈,那个时期的自动对弈程序属于经验型的。随后从国外对围棋研究后,产生了蒙特卡洛树搜索的方法应运于围棋对弈,产生了一系列的强AI,可以达到业余水准,关于蒙特卡洛树搜索可以参看《基于蒙特卡洛树搜索的计算机围棋博弈研究》,可以说对该方法进行了详细的说明,阅读也较容易,可以得到围棋AI的一些背景,制约蒙特卡洛方法更近一步的原因是:树的展开,以及搜索的深度的确定。于此同时,...阅读全文

golang interface用法

接口是一个或多个方法签名的集合,任何类型的方法集中只要拥有与之对应的全部方法,就表示它"实现"了该接口无须在该类型上显式添加接口声明。 所谓对应方法,是指有相同名称、参数列表 (不包括参数名) 以及返回值。当然,该类型还可以有其他方法。(1)接口命名习惯以er结尾结构体。(2)接口只有方法签名,没有实现。(3)接口没有数据字段。(4)可在接口中嵌入其他接口。(5)类型可实现多个接口。 下面举个栗子:用例:一个人,他的有两种角色,在公司是程序猿,在家里是孩他爸。在公司当程序猿时就写bug,在家当爹时就洗尿布。则其接口和结构体的映射关系为: package main import "fmt" type CodeMonkey interface { codingEveryday() string ...阅读全文

博文 2014-10-04 19:27:27 Estone

golang汉字转拼音

1、为什么造轮子?同事在开发过程中需要用到敏感词过滤检查,其中一个功能就是拼音搜索,需要用到汉字转拼音,然后网上找了这么一个库,首先感谢他对汉字转拼音的贡献,对golang源码的贡献。然后我们的golang执行文件编译后启动速度慢了100倍,经过逐一排查后发现原来是这个库导致的,于是便有了这么一个造轮子的过程。2、源码源码地址3、使用demo添加引用import( "github.com/cao-guang/pinyin" )初始化调用func main() { pinyin.LoadingPYFileName("./data/pinyin.txt") //这里是字典文件路径程序启动调用一次,载入缓存 //demo str1, err := pinyin.To_Py("汉字拼音", "", ...阅读全文

博文 2019-10-10 10:14:57 cao-guang

golang expected declaration, found 'IDENT'

这个问题是因为:=只能在函数内部使用,如果声明全局变量需要使用var关键字 例如 func foo() { id := 1 } 如果声明为全局变量则需要这样声明 var id = 1 PS:Go中引入:=是为了减少一些临时变量的定义,所以一个好的习惯是:=只用来声明临时变量,对于一个函数中常用的变量还是使用var进行声明。 附: Short_variable_declarations $(function () { $('pre.prettyprint code').each(function () { var lines = $(this).text().split('\n').length; var $numbering = $('

博文 2015-12-12 17:00:01 jiaolongdy

解码2017双11:全球狂欢新记录背后的阿里云存储

摘要: 2017天猫双11再次刷新纪录,这背后是大数据的支撑和阿里云计算的能力的体现。手淘、天猫APP主站的所有图片和视频都存储在阿里云对象存储OSS之上,全球数以亿计的消费者,对这些商品的访问的流量和并发次数,比成交笔数高得高。 **阿里云存储支撑双11新记录** 2017天猫双11全球狂欢节,全天成交额再次刷新纪录达到1682亿元,全天支付总笔数达到14.8亿,全天物流订单达8.12亿,全球225个国家和地区的消费者参加。新零售能量全面爆发,全球超100万商家线上、线下打通,近10万智慧门店、超50万零售小店参与“全球共振”。 这背后是大数据的支撑和阿里云计算的能力的体现。手淘、天猫APP主站的所有图片和视频都存储在阿里云对象存储OSS之上,全球数以亿计的消费者,对这些商品...阅读全文

云栖大会中你不可以错过的技术盛宴!

2017阿里云杭州云栖大会Clouder Lab探秘 带上电脑去云栖,与专家面对面顺便拿认证!报名9月30日截止! 杭州云栖大会推出的4场Clouder Lab开放实验室,为企业级技术人员提供了一个动手实操的实验平台,帮助他们清晰理解云计算、大数据相关的知识技能,达到即学即用的目的,更可以和阿里云专家一起探索云端最佳技术实践。且课程皆精选自阿里云大学业界首创的Apsara Clouder认证课程。 Clouder Lab还将设置现场测试环节,更好的辅助用户掌握核心技能点。通过测试者,可现场领取阿里云大学官方证书。 据悉去年Clouder Lab现场开发者人山人海,出现了一座难求的景象!而今年云栖大会Clouder Lab都有哪些有趣的实战内容? ...阅读全文

除了 Python ,这些语言写的机器学习项目也很牛

Python 由于本身的易用优势和强大的工具库储备,成为了在人工智能及其它相关科学领域中最常用的语言之一。尤其是在机器学习,已然是各大项目最偏爱的语言。 其实除了 Python ,也不乏有开发者用其他语言写出优秀的机器学习项目。在此,列出其中一些个人认为值得关注的开源机器学习项目。由于篇幅有限,考虑分多期整理。 1、C Darknet —— 神经网络框架 Darknet 是一个用 C 和 CUDA 编写的开源神经网络框架。它快速,易于安装,并支持 CPU 和 GPU 计算。 CCV —— 计算机视觉库 CCV 是 C-based/Cached/Core Computer Vision Library 的简称, 它是一个现代的计算机视觉库。 CCV 是一种以应用驱动的算法库,比如对静态物体(如...阅读全文

博文 2017-06-25 06:47:11 编辑部的故事

Go学习笔记:interface

Go不是一种典型的OO语言,它在语法上不支持类和继承的概念。 没有继承是否就无法拥有多态行为了呢?答案是否定的,Go语言引入了一种新类型—Interface,它在效果上实现了类似于C++的“多态”概念,虽然与C++的多态在语法上并非完全对等,但至少在最终实现的效果上,它有多态的影子。 那么,Go的Interface类型到底是什么呢?怎么使用呢?这正是本篇笔记试图说明的问题。 1. Method(s) in Go 在说明Interface类型前,不得不先用Go的method(s)概念来热身,因为Go语言的interface与method(s)这两个语法有非常紧密的联系。 虽然Go语言没有类的概念,但它支持的数据类型可以定义对应的method(s)。本质上说,所谓的method(s)其实就是函数...阅读全文

博文 2015-11-09 16:00:03 qdx411324962

Golang获取机器码(MachineCode、PhysicalId)

package main import ( "context" "crypto/md5" "crypto/rand" "encoding/base64" "encoding/hex" "errors" "fmt" "github.com/StackExchange/wmi" "golang.org/x/sys/windows" "net" "sort" "strings" "time" "unsafe" ) func main(){ t := time.Now() a:=GetPhysicalID() fmt.Println(time.Since(t), a) } func GetPhysicalID() string{ var ids []string if guid,err := get...阅读全文

博文 2019-02-19 16:12:41 sdlyfjx

golang-http 请求---设置header与直接发

背景 现在各种软件到处都是,写代码难免有时候需要http 调用其他的接口。 其实这个东西还挺常用,虽然很简单,但是写的时候 又忘,就像是提笔忘字,索性总结一下吧。 不需要设置header属性的http 请求 那就直接发,简单快捷不拖沓。 http GET请求 resp, err := http.Get("http://abced.com/" + "/user/false/lsj") if err != nil { t.Log("query cluster failed", err.Error()) t.FailNow() } defer resp.Body.Close() var serviceResp ServiceResp respByte, _ := ioutil.ReadAll(re...阅读全文

博文 2019-08-02 21:32:38 名白

1.1 Go语言简介

1.Go语言介绍 golang吉祥物 golang【Go】是Google公司开源的一种静态强类型编译型编程语言,于2019年11月正式对外公开。与解析型语言python有着本质的区别。编译型与解析型区别:编译型语言:源代码先经过编译器编译成机器语言,再由机器直接执行机器码即可执行。解析型语言:源代码先翻译成中间代码,再有解析器对代码进行解析并执行。Go语言特性1,跨平台,可以在Window、MacOS、Linux等平台上运行。2,高并发,go语言天生支持。3,支持面向对象和面向过程编程模式。4,语法上有指针,类似于C语言。5,具备垃圾回收机制。Go语言的发展历史=》详细介绍请阅览下面链接:Go语言发展简史Go语言应用 1,游戏服务器开发 2,云端服务器开发 3,区块链开发 应用Go语言的企业...阅读全文

golang中的接口与继承

接口 interface是关键字; 接口的力量:interface是只要你实现了接口定义的类型(方法),就可以作为接口的实例拿来用,在语言层面上不再需要其它的约束。 继承 在结构体中嵌入匿名类型成员,就可以继承匿名类型的方法。 不仅可以嵌入匿名类型成员,还可以嵌入匿名的接口,或者匿名的指针对象,是一种纯虚继承,继承的只是接口的规范,而实现还得靠自己...阅读全文

博文 2019-02-10 21:34:44 areece