- 博客(20)
- 资源 (4)
- 收藏
- 关注
原创 Go语言(基础)——接口源码分析
文章目录描述接口的底层结构体图示接口的底层结构体全貌接口的动态类型和动态值接口类型和 nil 作比较打印接口的动态类型和值打印接口的hash值描述接口的底层结构体iface 和 eface 都是 Go 中描述接口的底层结构体,区别在于 iface 描述的接口包含方法,而 eface 则是不包含任何方法的空接口:interface{}。iface 与 eface 的源码在 runtime 包下的 runtime2.go 文件里。【Go Version: Go 1.14.4】从源码层面看://以下
2021-04-09 23:52:12
323
原创 Go语言(使用)——解析json文件
要用到的包用来解析的数据//在 comment.json 文件里{"CommentsCount1": [ { "SkuId":100003814753, "ProductId":100003814753, "CommentCountStr":"5万+", "GoodRate":0.98, "GeneralRate":0.015, "PoorRate":0.005 } ], "CommentsCount2
2021-04-05 14:36:05
392
原创 Go语言(基础)——文件操作
文章目录1、前言2、文件操作2.1、创建文件2.1.1、os.Create(name string) (file *File, err error)2.1.2、os.OpenFile(name string, flag int, perm FileMode) (file *File, err error)2.1.2.1、文件选项2.1.2.2、文件模式2.1.2.3、打开一个不存在的文件,并且文件权限设为 rwxr-xr--2.2、打开文件2.2.1、os.Open(name string) (file *
2021-03-28 16:37:49
1789
原创 Go语言(基础)——接口
文章目录1、前言2、初识接口2.1、接口的定义2.2、入门案例2.3、空接口2.4、类型断言3、接口的实现与结构体的嵌套 >> 多态1、前言接口是 Go 语言整个类型系列的基石,C++,Java 使用"侵入式"接口,主要表现在实现类需要明确声明自己实现(implement)了某个接口。这种强制性的接口继承方式是面向对象编程思想发展过程中一个遭受相当多质疑的特性。Go 语言采用的是“非侵入式接口",Go 语言的接口有其独到之处:只要类型 T 的公开方法完全满足接口 I 的要求,就可以把类型
2021-03-27 23:23:46
114
原创 Go语言(基础)——结构体
文章目录1、前言2、结构体的定义与声明和使用2.1、结构体的定义2.2、结构体的声明2.3、结构体的使用2.3.1、函数参数之传递值拷贝2.3.2、函数参数之传递指针拷贝2.3.3、结构体的方法2.3.3.1、以值为接收体2.3.3.2、以指针为接收体3、结构体的嵌套3.1、入门案例3.2、需要注意的点1、前言在 Go 语言中不存在 Class 类这种概念,但是存在 struct 结构体,可以代替实现 Class 的功能,并且 Go 语言中也不存在继承,但是可以通过结构体嵌套实现类似 Java 中的继
2021-03-27 21:44:55
158
原创 Linux(基础)——安装MySQL5.7
文章目录创建目录并进入(第一步)获取 MySQL 安装包(第二步)解压安装包(第三步)查询 mariadb 相关安装包(第四步)卸载 mariadb 数据库 centos7.6 下必要的操作(第五步)开始真正安装 MySQL(第六步)启动 MySQL(第七步)设置 root 用户密码(第八步)退出 MySQL 数据库创建目录并进入(第一步)mkdir /opt/mysqlcd /opt/mysql获取 MySQL 安装包(第二步)wget http://dev.mysql.com/get/m
2021-03-27 16:20:50
710
1
原创 Go语言(基础)——channel
文章目录1、前言2、channel 的使用2.1、声明与创建 channel2.1.1、双向 channel2.1.2、单向 channel2.2、在 channel 上发送和接收数据(入门案例)2.3、channel 与 select 的结合使用2.3.1、入门案例2.3.2、超时处理3、需要注意的点3.1、使用 for-range 迭代输出 channel3.2、time.After() 的注意事项1、前言channel 是 Go 中很重要的概念,配合 goroutine 是 Go 能够方便实现并
2021-03-26 21:29:06
448
原创 Linux(基础)——rpm 与yum
文章目录rpm 包的管理介绍rpm 包的简单查询指令rpm 包名基本格式rpm 包的其它查询指令卸载 rpm 包基本语法细节讨论安装 rpm 包基本语法参数说明应用实例yum介绍yum 的基本指令安装指定的 yum 包yum 的应用实例rpm 包的管理介绍rpm 用于互联网下载包的打包及安装工具,它包含在某些 Linux 分发版本中。它生成具有.RPM扩展名的文件。RPM 是 RedHat Package Manager(RedHat软件包管理工具)的缩写,类似 Windows 的 setup.exe
2021-03-25 08:03:05
285
原创 Go语言(基础)——map
文章目录前言map 的基本使用声明和初始化声明初始化增删改查遍历 map函数传参前言计算机科学里面最有用的数据结构之一就是hash表。不同的hash表实现提供了很多独特的特性。但是基本上都包括元素查询,添加和删除。Go提供了一个内置的类型map,这个类型实现了hash表的基本功能。所以在 Go 语言里要使用 hash 表,那么就用 map 吧。map 的基本使用声明和初始化声明var m map[string]int //此时 m 还没有被分配内存空间,是个 nil如果没有给 map
2021-03-23 16:56:56
115
原创 Go语言(基础)——数组
文章目录数组的基本介绍声明和初始化数组的声明数组的初始化二维数组二维数组的声明和初始化指针数组指针数组的声明与初始化数组的使用作为函数参数——值传递作为函数参数——指针传递总结数组的基本介绍在 Go 中,数组是基本数据类型,作为函数参数时,传递方式是值传递。声明和初始化数组的声明var array [5]int上面声明的是一个长度为 5,存储的数据类型是 int 型的数组,现在这个数组还没有进行初始化,现在这个数组里存储的是系统默认的零值,即存储了 5 个 0。数组一旦声明后,数组的元
2021-03-22 13:53:26
470
2
原创 XShell连接虚拟机输入命令卡顿问题解决
第一步:打开会话管理器第二步:选中正在使用的会话,鼠标右键选择属性第三步:定位到【连接】->【ssh】->【隧道】,选择【隧道】第四步:将【转发X11连接到(X)】复选框取消掉最后一步:点击确定,重新连接图片:...
2021-03-14 10:31:29
2368
9
原创 Python “&”、“|”、“^”按位逻辑运算到底是咋回事
if __name__=='__main__': a,c=map(int,input("Please enter 2 numbers: ").split()) b=a&c print(b)&是按位逻辑运算符,比如5 & 6,5和6转换为二进制是101和110,此时101 & 110=100,100转换为十进制是4,所以5 & 6=4a,b=map(i...
2018-06-21 14:26:36
42923
2
原创 Python 中' '.join()出现错误的解决办法
1、sequence item 0: expected str instance, int found 这个报错的原因是join后面()里的对象不是string类型,如:此处将 print(' '.join(a_list)) 修改成 print(' '.join('%s'%id for id in a_list)) 就可以了,试一下:...
2018-06-21 10:49:51
7680
1
原创 python 类中的“静态”成员变量
Python ,Static类中定义一个变量StaticVar,并给它初始化等于5,a,b,c作为该类的三个对象;a对自己的属性StaticVar进行加一后,与类的属性脱离了关系,成为了a自己的属性,所以后来类的属性StaticVar自增2时,对a就不产生影响了,但是由于b与c都没有对自己的属性StaticVar做出变化,所以没有与类的属性脱离关系,所以后来类的属性自增2时,b与c的属性也都同时加...
2018-06-21 10:49:20
1357
原创 Python 输出时去掉列表元组外面的方括号与圆括号
在这可以用join()函数'x'.join(y),x可以是任意分割字符,y是列表或元组。以列表为例,可以将列表中的每一个元素两头的引号给去除,同时,元素与元素之间以字符‘x’作为分割标志,并且列表最外面的中括号也能去除掉。元组同理。a_list=['monday','tuesday','wednesday','thursday','friday','saturday','sunday']prin...
2018-06-20 15:37:30
50720
7
原创 说说Python里的获取日期方法
在python里想要自动的获取电脑系统上的时间,并自动显示出来,需要导入datetime模块。datetime.datetime.now().strftime(""%d-%m-%Y %H:%M:%S"")这条语句能够获取到的时间可以精确到秒datetime.date.today().strftime("%Y-%m-%d")这条语句获取到的时间只能精确到天。下面上代码:import datetime...
2018-06-20 15:26:43
1107
原创 Python 统计一串字符里数字、英文字母、空格以及其他字符的个数
在这儿首先想到要用到ASCII码,下面附一张ASCII码转换表:0~9数字的ASCII码值取值范围为48~57a~z小写英文字母的取值范围为97~122A~Z大写英文字母的取值范围为65~90sstr=list(input("Please enter a string: "))alphas=[]digits=[]spaces=[]others=[]for i in range(len...
2018-06-20 09:08:06
20704
原创 使用python可视化包pygal生成可缩放的矢量图形文件
安装pygal在Windows系统中,命令类似于下面这样:pyhton -m pip install --user pygal==1.7绘制直方图1、为创建条形图,我们创建了一个pygal.Bar()实例,并将其存储在picture中。picture=pygal.Bar()2、接下来设置title属性,用来表示直方图的名字,并将掷骰子的所有可能结果用作x轴的标签(标签一定要是string型,int...
2018-06-17 12:14:05
3545
4
基于Go语言的爬虫项目
2021-04-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人