- 博客(62)
- 收藏
- 关注
原创 深入了解Golang中的反射机制
反射是指在程序运行时动态地检查和修改对象的能力。在Go语言中,通过反射可以在运行时检查变量的类型、获取结构体字段和方法的信息,以及动态调用方法等操作。反射在一些需要处理未知类型或需要在运行时进行动态操作的场景中非常有用。
2023-05-28 01:11:35 3673 93
原创 Golang中互斥锁和读写互斥锁
在Go语言中,互斥锁(Mutex)是一种基本的同步原语,用于实现对共享资源的互斥访问。互斥锁通过在代码中标记临界区来控制对共享资源的访问,从而保证同一时间只有一个 goroutine 可以访问共享资源,避免了并发访问时的数据竞争和不一致性问题。互斥锁的主要方法包括两个,分别是 Lock 和 Unlock。Lock 方法用于锁定共享资源,防止其他 goroutine 访问;Unlock 方法则用于解锁共享资源,允许其他 goroutine 访问。
2023-05-24 23:49:38 2335 44
原创 Golang中的管道(channel) 、goroutine与channel实现并发、单向管道、select多路复用以及goroutine panic处理
管道(channel)、goroutine与channel实现并发、单向管道、select多路复用、goroutine panic处理
2023-05-22 22:57:18 4651 69
原创 Golang中的协程(goroutine)
进程、线程、并发、并行以及协程(goroutine)中的使用sync.WaitGroup等待协程执行完毕,多协程和多线程
2023-05-20 23:51:28 3142 29
原创 一文搞懂Golang中的接口
Go语言中的接口,空接口和类型断言 ,结构体实现多接口,接口嵌套以及结构体值接收者和指针接收者实现接口的区别
2023-05-19 16:32:45 1629 46
原创 Golang指针的操作以及常用的指针函数
指针的操作:定义指针、获取变量地址、 解引用指针、 指针作为函数参数、 指针的空值 ;常用的指针函数: new 函数 、make 函数、 append 函数 、copy 函数。
2023-05-18 16:55:16 959 13
原创 Golang结构体入门
Go语言中结构体基础知识与以及结构体基础、结构体示例、为结构体定义方法、组合结构体 、嵌套结构体、指针结构体、匿名字段、面向对象
2023-05-15 09:15:16 696 12
原创 Python中Pandas库的相关操作
Pandas是Python中常用的数据处理和分析库,它提供了高效、灵活且易于使用的数据结构和数据分析工具。数据排序和排名:Pandas提供了对数据进行排序和排名的功能,可以按照指定的列或条件对数据进行排序,并为每个元素分配排名。选择和过滤数据:Pandas提供了灵活的方式来选择、过滤和操作数据。数据的合并和连接:Pandas可以将多个DataFrame对象进行合并和连接,支持基于列或行的合并操作。缺失数据处理:Pandas具有处理缺失数据的功能,可以检测、删除或替换数据中的缺失值。
2023-05-14 23:46:01 664
原创 Python中NumPy库的相关操作
NumPy(Numerical Python)是Python中常用的数值计算库,它提供了高性能的多维数组对象和对数组进行操作的函数。多维数组对象(ndarray)(1)NumPy最重要的对象是ndarray,它是一个具有固定大小的数组,可以包含相同类型的元素。(2)ndarray的维度称为轴(axes),轴的个数称为秩(rank)。(3)ndarray对象可以通过索引和切片进行访问和操作。数组创建和初始化(1)使用NumPy的array()函数可以创建一个ndarray对象。
2023-05-14 23:40:32 429 1
原创 Golang中map基础
map底层是基于哈希表实现的,map使用哈希表来存储键值对,通过哈希函数将键映射为哈希值,用哈希值作为数组的下标,将值储存在以哈希值为下标的数组槽中。map中的元素是键值对(key-value)的形式存储的,其中键必须是支持==比较运算符的类型,如string、数字类型、char等;Map的key类型:Map的key可以是任意可比较类型,如整数、浮点数、字符串、数组、结构体等,但不可以是切片、函数、Map等不可比较类型。Map的元素遍历顺序:Map的元素遍历顺序是随机的,不保证元素的顺序。
2023-05-13 16:11:11 1117 4
原创 Golang中的数组和切片
(4)数组可以作为参数传递给函数,但是因为数组的长度是固定的,因此数组的长度也需要作为参数传递;切片可以直接作为参数传递给函数,不需要指定长度。(2)数组是值类型,将一个数组赋值给另一个数组时,会将所有的元素进行复制;切片是引用类型,将一个切片赋值给另一个切片时,它们将共享底层数组。(3)数组可以使用==运算符进行比较,切片不能使用==运算符进行比较。(1)数组的长度固定,切片的长度是动态的。
2023-05-11 07:32:19 906
原创 Golang中的运算符
Go语言中的赋值运算符包括简单赋值、加等于、减等于、乘等于、除等于、模等于、与等于、或等于、异或等于等。Go语言中的关系运算符包括等于、不等于、大于、小于、大于等于和小于等于等。需要注意的是,比较运算符只能用于可比较的类型,例如整数、浮点数、字符串、指针等。Go语言中还有一些其他的运算符,例如取地址运算符&、指针运算符*、sizeof运算符等。需要注意的是,取地址运算符和指针运算符只能用于指针类型,而sizeof运算符只能用于静态类型。用于进行基本的算术运算,包括加法、减法、乘法、除法、取模等。
2023-05-10 14:13:05 1092
原创 Go语言字符串基础
(1)strings.Contains(s, substr) 判断字符串s是否包含子串substr(2)strings.Index(s, substr) 返回子串substr在字符串s中第一次出现的位置,如果不存在则返回-1(3)strings.LastIndex(s, substr) 返回子串substr在字符串s中最后一次出现的位置,如果不存在则返回-1。
2023-05-09 07:20:16 673
原创 Go语言中的流程控制语句
在Go语言中,可以在if后面加上一段执行语句,执行语句也可以用作对if条件的判断。a赋值为condition()方法的结果,然后让a与nil进行判断,如果为true,那么会执行代码块中的代码,否则不执行,而且a的作用域只会在这条语句的范围内。
2023-05-08 07:56:18 785
原创 Python中异常处理的学习
在Python中,如果程序出现错误,会抛出异常。异常是一种Python对象,它封装了错误的信息,并提供了一种处理错误的机制。:当assert语句失败时抛出。:当对象没有这个属性时抛出。EOFError:当输入函数(input)遇到文件结束标志EOF时抛出。:当导入模块失败时抛出。IndexError:当使用下标超出序列范围时抛出。KeyError:当使用字典中不存在的键时抛出。NameError:当使用未定义的变量时抛出。TypeError:当对一个类型不符合要求的对象执行操作时抛出。
2023-05-07 22:56:17 494 1
原创 Python中模块和包基础学习
上述代码中,我们使用__name__变量判断模块是被导入还是直接执行,如果是直接执行,则输出This is the main program.,否则输出This is a module.。以上是一些Python模块的基本介绍和操作示例。在实际开发中,模块的使用和操作也是非常常见和重要的,熟练掌握这些知识点可以提高代码的复用性和可维护性。Python中的模块是指一个文件,可以包含函数、类、变量和可执行代码等,并且可以被其他程序引入和使用。文件中可以定义包级别的变量和函数,这些变量和函数可以被包中的模块共享。
2023-05-07 22:39:16 518
原创 Go语言的基础语法以及变量和常量
在一个const声明语句中,在第一个声明的常量所在的行,iota会被置为0,然后每有一个常量声明的行iota的值就加1。例如int类型默认为0、float类型默认为0.0、bool类型默认为false,string类型默认为空字符串,指针类型默认为nil。表示在函数体内声明的变量称为局部变量,它的作用域只在函数体内,它的参数的返回值的变量也是局部变量。变量声明以关键字var开头,中间为变量名,最后为变量类型,无需分号结尾。其中,var是变量声明的关键字,age是变量名,int是变量的类型。
2023-05-05 00:22:05 515 1
原创 LeetCode--缺失的第一个正数(41)和 接雨水(42)
(2)0 -> a.length 循环,将 a[i] 放到 a[i] - 1 位置,如果a[a[i] - 1]!解释:上面是由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表示的高度图,在这种情况下,可以接 6 个单位的雨水(蓝色部分表示雨水)。(1)映射一个关系为数组 a[i] 存的值为 i+1,所以当 a[i] = x时,x的下标就位 x-1。输入:height = [0,1,0,2,1,0,1,3,2,1,2,1]输入:height = [4,2,0,3,2,5]
2023-03-19 23:48:17 1059 30
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人