Go 学习笔记(9):多并发爬虫下载图片
我是带着目的学习 Go 的,第一阶段的学习目的是能够写 API 调用,第二阶段就是可以写多并发的爬虫,毕竟 Go 是以搞并发闻名的,我倒要看看怎么个“高并发”。于是随便找了个图片网站实现了一个高并发的图片下载爬虫,速度那是真快!
我是带着目的学习 Go 的,第一阶段的学习目的是能够写 API 调用,第二阶段就是可以写多并发的爬虫,毕竟 Go 是以搞并发闻名...
Go 学习笔记(8):生产者消费者模型
下面是一个多生产者和多消费者的场景例子,生产者数量和消费者数量都是不定的,此时需要考虑何时关闭通道,比较好的时机是利用计数器,当生产者的计数器清理则表示所有生产者都执行结束,此时就可以安全的关闭通道。
下面是一个多生产者和多消费者的场景例子,生产者数量和消费者数量都是不定的,此时需要考虑何时关闭通道,比较好的时机是利用计数器,当...
Go 学习笔记(7):学习成果之写一个 API 调用的 sdk
Go 的学习也进行了两周,已经学完了基本语法、控制流、函数、方法,其实已经可以写一些简单的逻辑了。然后按照我的学习方法是带着目的的去学,我第一阶段的目标就是写一个 API 调用的 sdk,现在交作业。
Go 的学习也进行了两周,已经学完了基本语法、控制流、函数、方法,其实已经可以写一些简单的逻辑了。然后按照我的学习方法是带着目的...
Go 学习笔记(6):循环和判断
switch 判断是用来简化 if 判断的,在 Python 里面没有这个关键字。只需要记住 switch 的条件和判断的类型保持一致就行,至于条件是什么,怎么写,都可以,比如条件如果为空,其实表示的是条件为 true
switch 判断是用来简化 if 判断的,在 Python 里面没有这个关键字。只需要记住 switch 的条件和判断的类型保...
Go 学习笔记(5):指针、Map 和 结构体
Python 里面是没有指针的概念的,所以学习到 Go 的指针这个章节的时候我一直都是一知半解的,虽然看了不少资料也问了 ChatGPT 很多次,但是到现在也还没完全弄清楚到底什么时候应该用指针什么时候不能使用指针。
Python 里面是没有指针的概念的,所以学习到 Go 的指针这个章节的时候我一直都是一知半解的,虽然看了不少资料也问了 Cha...
烂笔头周刊(第4期):保持学习
最近在学习 Go 语言,当做自己 2024 年的副本任务,一方面是为了技能的提升,毕竟技多不压身,另一方面是想让自己保持一颗学习的心。
最近在学习 Go 语言,当做自己 2024 年的副本任务,一方面是为了技能的提升,毕竟技多不压身,另一方面是想让自己保持一颗学习...
Go 学习笔记(4):数组和切片
Go 的数组跟 Python 的列表或者其他语言的数组是不一样的概念,Go 的数组是一种更底层的数据类型,长度是指定的,不能动态变化。而 Go 的切片更像是 Python 的列表,是数组的一种动态的存在。数组并不常用,切片才是频繁使用的数据类型。
Go 的数组跟 Python 的列表或者其他语言的数组是不一样的概念,Go 的数组是一种更底层的数据类型,长度是指定的,不能动态...
Go 学习笔记(3):基本类型
Go 语言和 Python 数据类型的主要异同在于,Go 语言是静态类型语言,而 Python 是动态类型语言。这意味着在 Go 中,变量的数据类型在编译时就已经确定,而在 Python 中,变量的数据类型是在运行时根据赋值确定的。
Go 语言和 Python 数据类型的主要异同在于,Go 语言是静态类型语言,而 Python 是动态类型语言。这意味着在 Go...
Go 学习笔记(2):变量和常量
Go 语言在声明变量的时候,会自动对变量对应的内存区域进行初始化操作。每个变量会被初始化成其类型的默认值,例如: 整型和浮点型变量的默认值为0。 字符串变量的默认值为空字符串。 布尔型变量默认为 false。 切片、函数、指针变量的默认为 nil。
Go 语言在声明变量的时候,会自动对变量对应的内存区域进行初始化操作。每个变量会被初始化成其类型的默认值,例如: 整型和浮点型变...
Python-Markdown 自定义拓展
Python 的 Markdown 库原生支持的语法很多,大部分 Markdown 的语法都是支持的,但是原生语法也有一些其他编辑器支持的渲染语法不支持。本文就来分享一下如何自定义 Python-Markdown 的拓展,以支持更多渲染语法。
Python 的 Markdown 库原生支持的语法很多,大部分 Markdown 的语法都是支持的,但是原生语法也有一些其他编...