借助 Python 学习 Go 语言
无论你是编程新手还是经验丰富的老手,你很可能至少听过以下这句话一次。
所有编程语言本质上都是一样的,只是语法不同而已。如果你能学会一门语言,就能学会其他语言。
我对此深信不疑。然后我就想,何不尝试一下呢?而且,我一直很想学Go语言,但因为拖延症一直没能开始😅。所以,我觉得这会很有趣(而且学习过程应该会很顺利)。
为什么选择 Go 语言
现在市面上有很多编程语言。那么,我为什么选择 Go 而不是其他语言呢?原因如下。
- 它有个可爱的吉祥物🙄
- 它是编译后的(这意味着它运行速度很快)。
- 简单的代码语法
- 强大的后端支持
- 适合编写 CLI 应用程序
- 用 Python 能做的事情,用 Go 也能做(而且速度更快一些)。
- Python 的一个强劲对手😋
好的,以下是更详细的版本。
在我开始之前
- 如果你已经掌握了 Python,那就太好了,你学习 Go 的过程将会非常顺畅。
- 如果你还不懂Python,那太棒了,你将同时学习两种新语言。是不是很酷?
基本语法
尽管各种编程语言的语法各异,但要想快速入门任何一种新的编程语言,都需要了解一些共同的基本知识。这些知识构成了编程语言的骨架(排名不分先后)。
- 变量
- 数据类型
- 输入输出
- 循环
- 控制语句,又称条件
- 功能
走吧😅
1. Go 语言的 Hello world 程序
Go 语言遵循类似 C 语言的语法。因此,你不能像在 Python 中那样直接开始编写代码。
print("Hello world")
在 Go 语言中,一个“Hello World”程序看起来像这样:
package main
import "fmt"
func main() {
fmt.Println("Hello, world")
}
如果你熟悉 C 语言,你会发现这里有一个常见的模式。首先,导入头文件,然后调用 main 函数,最后编写你的代码。
2.变量
在 Python 中,你只需要输入变量名和值即可,但在 Go 语言中则有所不同。以下是 Python 中基本的变量声明示例。
var variable_name = value
在 Go 语言中,你应该这样实现。
package main
import "fmt"
func main() {
fmt.Println("Hello, world")
var fruit = "apple"
var number = 10
}
但是,一旦你给变量赋值,就无法更改它的数据类型。例如
a = 50
a = "fifty"
这在 Python 中是可行的,但在 Go 中则不行。
package main
import "fmt"
func main() {
fmt.Println("Hello, world")
var a = 50
var a = "fifty"
}
如果你不想var一直打字,你可以这样做
fruit := "apple"
以下是在 Go 语言中创建变量的更多方法。
3.数据类型
Python 和 Go 中都有许多高级数据类型。以下是一些你可能会经常用到的常用数据类型。
| Python | Go语言 |
|---|---|
| 整数 | int8、int8、int16、int32、int64、uint8、uint16、uint32、uint64 |
| 漂浮 | float32、float64、complex64、complex128 |
| 细绳 | 细绳 |
| 布尔值 | 布尔值 |
| 列表 | 大批 |
4.输入输出
这就是在 Python 中获取输入的方式。
name = input("What's your name?")
这是用 Go 语言实现的方法。
var name
fmt.Scan(&name)
(别忘了导入 fmt 格式)
5.循环
遗憾的是,Golang 中没有 while 循环。因此,您只能使用 for 循环来完成这项工作。
for i in range(50):
# Do something
以下是如何在 Go 语言中编写循环的方法
for i := 0; i < 50; i++{
// Do something
首先,初始化一个变量,然后设置变量的范围,最后递增变量。
6.条件句
你可以借助条件语句来控制代码的执行流程。
if num == 1:
print("The number is one")
elif num == 2:
print("The number is two")
else:
print("The number is neither 1 nor 2")
在 Go 中
if num == 1 {
fmt.Println("The number is one")
} else if num == 2 {
fmt.Println("The number is two")
} else {
fmt.Println("The number is neither one nor two")
}
7.功能
最后,我们来声明一些函数。哦!等等,你已经声明过了。什么时候声明的?它func main()本身就是一个函数!
def add(a, b):
return a + b
在 Go 中
func add(a int, b int){
return a + b
}
延伸阅读
如果你想更深入地了解 Go 语言(你肯定想),我建议你读读这篇文章。
祝你学习愉快!🤗
文章来源:https://dev.to/muhimen123/learn-go-with-the-help-of-python-33lf