Go by Example-变量

640?wx_fmt=jpeg

上一节中提到了值类型,但是他们都是写在输出语句里的,如果后面程序需要用的话就显得非常的不方便,所以更好的办法就是把它们定义成变量,然后在调用。

变量

和Python不同的是,Go语言中的变量是需要的显示的声明出来的一般会使用var关键字进行声明,GO编译器会在编译的时候检查其正确性,如果你写错可是运行不起来的,

Go语言的变量声明有多种方法,用的最多的是下面两种:var显示的指出变量的类型,然后稍后再为其赋值,也可以直接为其赋值。

使用var声明变量

其格式为:

关键字var+变量如果多个使用,间隔+变量类型

下面看具体情况:

var a int

像上面的代码,如果只是声明了不用,那么编译器会报错,

var b int
fmt.Println(b)

这里声明了,虽然没赋值但是后面使用了,在Go中如果打印没有赋值的声明变量,会输出对应类型的零值,因为b类型为int,所以会输出0。

var c,d string ="ok","let's go"
fmt.Println(c,d)

同样的Go还支持多变量赋值。

短变量

第二种声明变量的方法,称之为短变量声明(在Python3.8也加入了这个符号,称之为海马运算符)

f:=bool 
fmt.Println(f)

代码示例

最后来一个综合示例

package main
import "fmt"
func main() {
    // var a string = "hello" 如果定义了不使用编译器出提示错误
    var b, c int = 3, 4 //使用var 关键字可以同时定义多个变量,记得最后指定类型
    fmt.Println(b, c)
    var d = true
    fmt.Println(d)
    var e int
    fmt.Println(e)
    f := "hello dj"
    fmt.Println(f)
}

对应的Python代码如下:

def main():
    # a  = "hello" 如果定义了不使用也没事
    b, c  = 3, 4 #可以同时定义多个变量,不用指定类型
    print(b, c)
    d = True #Ture,首字母要大写
    print(d)
    #e 不允许声明了不赋值
    #print(e)
    print(f := 1>2) #需要Python3.8支持,一般都是赋值之后进行判断操作,Pycharm解释器会提示错误。

if __name__ == '__main__':
    main()

总结

  • Go是静态语言,Python是动态语言。

  • 静态语言一般需要先编译,然后运行。

  • 动态语言运行时编译。对于变量类型在运行时会解析。

因为我也在学习中,如有不足指出欢迎大家指出。

推荐阅读

Python 爬虫面试题 170 道:2019 版

Go By Example-你好,世界

Go By Example-值类型

添加微信[italocxa].回复:加群,加入交流群

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值