- 博客(16)
- 资源 (14)
- 收藏
- 关注
原创 Python: Pythonic
Pythonic:极具Python特色的Python代码,即明显区别于其它语言的写法的代码。很多时候,使用Pythonic会提高Python程序的运行速度,对于Python这种脚本语言来说,它可能比逻辑本身更重要。下面有一个简答的例子:import timestart = time.time()# 1 一般写法arr = []for i in range(100000):...
2018-08-21 14:22:27 1900
原创 git: 两个配置文件.gitattributes和.gitignore
.gitattributes在github上,如果未指定语言,Linguist来自动识别你的代码应该归为哪一类,它是根据某种语言的代码量来决定是哪种语言的项目。如果识别有误,可以新建.gitattributes文件来进行设置。格式如下:*.html linguist-language=go设置多个用分号”;”隔开。.gitignore这个文件的作用就是告诉Git哪些文件...
2018-08-15 10:16:36 12848
原创 Golang: 分布式爬虫项目
1. 获得初始页面的全部内容func determineEncoding(r io.Reader) encoding.Encoding { // Peek 返回缓存的一个切片,该切片引用缓存中前 n 字节数据, // 该操作不会将数据读出,只是引用,引用的数据在下一次读取操作之前是有效的 // 如果引用的数据长度小于 n,则返回一个错误信息;如果 n 大于缓存的总大小,...
2018-08-15 07:07:39 5841 4
原创 Golang: 外部排序项目
单机版外部排序网络版外部排序1. channel通信// 向channel中发送数据func ArraySource(a ...int) <-chan int { // 调用的真实情况是,函数新建一个channel并马上返回,并行的goroutine来进行发送数据的操作,发送完后记得close。 // func: 1.新建一个channel out...
2018-08-13 22:47:49 2661
原创 Golang: 函数式编程
函数式编程 vs 函数指针函数式一等公民:参数,变量,返回值都可以是函数高阶函数函数->闭包“正统”函数式编程不可变性:不能有状态,只有常量和函数函数只能有一个参数golang没有以上规定golang闭包的应用更为自然,不需要修饰如何访问自由变量没有lambda表达式,但是有匿名函数1. 示例代码:实现斐波那契数列1.1 functio...
2018-08-10 10:14:31 3462
原创 Golang: 面向接口
go语言的duck typing:具有python,cpp的duck typing的灵活性又具有java的类型检查接口变量里有什么?实现者的类型实现者的值(或指针指向实现者)注意:接口变量里自带指针,接口变量本身采用值传递,几乎不需要使用接口的指针指针接收者实现只能以指针方式使用;值接收者都可以查看接口变量的两种方法:Type AssertionT...
2018-08-10 09:30:57 2257 1
原创 Golang: 面向对象
首先声明,Golang不能算是一种面向对象的语言。因为:golang只支持封装,不支持继承和多态golang只有struct,没有class结构(struct)创建在堆上还是栈上?cpp中,局部变量分配在栈上,在外界也要使用的变量要分配到堆上,并且要手动释放java中,对象都分配在堆上,有对应的垃圾回收机制go中不需要知道分配在堆上还是栈上。比如返回了局部变量的地址,那么是...
2018-08-10 09:14:05 2421
原创 Golang: 字符串
Golang中的内建变量类型有:byte字节,rune字符 rune:(相当于go的char)使用range遍历pos-rune对使用utf8.RuneCountInString获得字符数量使用len获得字节长度使用[]byte获得字节其他字符串操作:Fields, Split, JoinContains, IndexTolower, ToUpperTrim, Tr...
2018-08-09 15:11:22 1942
原创 Golang: 内建容器
内建容器有数组和Map 这里讲三个概念:数组、切片、Map1. 数组arrays.go:2. 切片(Slice)2.1 slices.go:2.2 sliceops.go:3. Mapmaps.go:1. 数组数组是值类型[10]int和[20]int是不同的类型调用func f(arr [10]int)会拷贝数组。想改变原数组的值,用指针类...
2018-08-09 15:05:38 2788
原创 Golang: 函数和指针
函数要点返回值类型写在最后面可返回多个值函数作为参数没有默认参数、可选参数等,只有可变参数列表func.go:package mainimport ( "fmt" "reflect" "runtime" "math")// 函数要点// 1. 返回值类型写在最后面// 2. 可返回多个值
2018-08-09 09:47:16 4555
原创 Golang: 条件和循环
条件、循环要点for, if后面的条件没有括号if条件里也可以定义变量没有whileswitch不需要break,也可以直接switch多个条件1. branch.go:package mainimport ( "io/ioutil" "fmt")// switch会自动break,除非使用fallthrough;可以swich多条件;panic...
2018-08-09 08:59:35 3755
原创 Golang: 变量定义
变量定义要点:变量类型写在变量名之后编译器可推测变量类型没有char,只有rune原生支持复数类型内建变量类型:bool, string(u)int, (u)int8, (u)int16, (u)int32, (u)int64, uintptr(指针)byte, rune(就是char类型,为了应付多语言的一字节来设计,32位,与int32可混用)float32, f...
2018-08-09 07:59:34 3668
原创 Docker的简单命令
环境:centos 70.先要启动dockersudo systemctl start docker如果执行docker命令有如下提示:Got permission denied while trying to connect to the Docker daemon socket at unix:...就必须每次用sudo来执行docker命令。为避免每次sudo的麻烦,可以...
2018-08-08 23:03:52 1507
原创 Python: *args和**kwargs
Python形参中可以用*args和**kwargs:args就是一个数组,包含未起名字、非确定个数的参数kwargs就是一个字典,包含传入的key=value形式的参数。字典中元素的位置与形参列表中的不同例子:def test(a,*args,**kwargs): print a print args print kwargstest(1,2,3,d...
2018-08-03 21:35:13 1500
原创 图灵完备?
这个词源于引入图灵机概念的数学家艾伦·图灵(Alan Turing)。图灵机会受到存储能力的物理限制。图灵完备通常指具有无限存储能力的通用物理机器或编程语言。简单来说,一切可计算的问题都能计算,这样的虚拟机或者编程语言就叫图灵完备的。...
2018-08-03 21:27:51 2473
原创 cpp要点
1. include和前置声明前置声明告诉编译器有这个类的存在。当定义的类A依赖于类B,且类A中只用到类B的指针,只需要前置声明即可。虽然include肯定也可以,但是会减慢编译的速度。例如:class Parent;class Child {private: Parent* m_parent; };include告诉编译器整个类的属性和方法。当定义的类A依赖于...
2018-08-02 22:28:08 1552
2017年度11个AI全球顶尖会议记录(588页PDF详细目录)
2018-05-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人