>  기사  >  백엔드 개발  > 

Go语言进阶学习
Go语言进阶学习앞으로
2023-07-25 14:15:222106검색

1. 변수와 상수의 차이

변수: 프로그램이 실행되는 동안 값이 변하는 양.

상수: 프로그램이 실행되는 동안 값이 변하지 않는 수량입니다.

변수든 상수든 생성 시 해당 값을 저장하기 위해 메모리에 공간이 할당됩니다.


2. 변수

1. Python의 변수는 유형을 선언할 필요가 없습니다.

이는 Python의 동적 언어 기능을 기반으로 합니다. 변수는 미리 타입을 선언하지 않고 바로 사용할 수 있습니다. 예를 들어, 다음 네 가지 변수 a, b, c, d에는 C 언어와 JAVA 프로그래밍 언어에서 요구하는 int a, str b, list c, int d 등의 타입 선언이 전혀 없습니다.

예:

 a = 4
 b = "haha"
 c = []
 d = 9-5

2. 변수에 값을 할당하려면 "=" 기호를 사용하세요.

a = 100

여기서 등호는 "할당"이 아니라 "할당"으로 이해하고 읽어야 합니다. "같음", " "할당"은 변수에 대한 연산이고, "같음"은 두 변수를 비교하는 것입니다. 위의 4개 변수 a, b, c, d에는 "=" 기호를 통해 서로 다른 값이 할당됩니다.

3. 각 변수는 사용하기 전에 값을 할당해야 하며, 값이 할당될 때까지는 변수가 생성되지 않습니다.

새로운 변수는 메모리 공간을 생성 및 개방하고 할당 작업을 통해 값을 저장합니다. 할당 없이 직접 사용하면 할당 전에 참조된 예외나 이름 없는 예외가 발생합니다.

예:

a       # 孤单单一个a,什么也表示不了,只能报错
a = 1   # 这样就没问题了,解释器知道a是个新变量了
c.append(1)     # c是个什么鬼?
NameError: name 'c' is not defined

결과:

4 Python에서는 변수 자체에 데이터 유형 개념이 없습니다.

일반적으로 "변수 유형"이라고 합니다. "는 변수입니다. 참조되는 개체의 유형 또는 변수 값의 유형입니다.

a = 1
a = "haha"
a = [1, 2, 3]
a = { "k1":"v1"}

    变量a在创建的时候,赋予了值为1的整数类型,然后又被改成字符串“haha”,再又变成一个列表,最后是个字典。变量a在动态的改变,它的值分别是不同的数据类型,这是动态语言的特点。

5.  “=”号这个赋值运算符是从右往左的计算顺序

a = 1
b = 2
c = a + b  # 先计算a+b的值,再赋给c
print(c)

6. Python允许同时为多个变量赋值

    (例如:a = b = c = 1,最终大家都是1)。也可以同时为多个变量赋值,用逗号分隔,逐一对应。

例如:a, b, c = 1, 2, 3,最后a是1,b是2,c是3。

不要把赋值语句的等号等同于数学的等号。

x = 1


x = x + 2

    如果从数学上理解x = x + 2那无论如何是不成立的,在程序中,赋值语句先计算右侧的表达式x + 2,得到结果3,再赋给变量x。由于x之前的值是1,重新赋值后,x的值变成3。

 a = 'ABC'时,Python解释器干了两件事情:

    1. 在内存中创建了一个‘ABC’的字符串对象;

    2. 在内存中创建了一个名为a的变量,并把它指向'ABC'。

     也可以把一个变量a赋值给另一个变量b,这个操作实际上是将变量b指向变量a所指向的数据,

    例如下面的代码:

a = 'Jack'
b = a
a = 'Tom'
print(b)
print(a)

最后变量b的内容到底是'Jack'还是'Tom'?如果从数学意义上理解,就会错误地得出b和a相同是‘Tom’,但实际上b的值还是'Jack ‘!

请牢记:Python中的一切都是对象,变量是对象的引用!

图:

执行a = ‘Jack’,解释器创建字符串‘Jack’对象和变量a,并把a指向‘Jack’对象;

执行b = a,解释器创建变量b,并且将其指向变量a指向的字符串‘Jack’对象;

执行a = ‘Tom’,解释器创建字符串‘Tom’对象,并把a改为指向‘Tom’对象,与b无关。


三、常量

    常量就是不变的变量,比如常用的数学常数圆周率就是一个常量。在Python中,通常用全部大写的变量名表示常量:

PI = 3.14159265359

    但事实上,从Python语法角度看,PI仍然是一个变量,因为Python根本没有任何机制保证PI不会被改变。你完全可以给PI赋值为10,不会弹出任何错误。所以,用全部大写的变量名表示常量只是一个习惯上的用法。

    常量通常放置在代码的最上部,并作为全局使用。


四、总结

    本文基于Python基础,主要介绍了Python基础中变量和常量的区别,对于变量的用法做了详细的讲解,用丰富的案例 ,代码效果图的展示帮助大家更好理解 。

위 내용은 의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 Go语言进阶学习에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제
이전 기사:다음 기사: