一文带你搞懂Python中变量与常量

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

[[433628]]

Hey,大家好呀,我是Go进阶者。

一、变量、常量的区别

变量:在程序运行过程中,值会发生变化的量。

常量:在程序运行过程中,值不会发生变化的量。

无论是变量还是常量,在创建时都会在内存中开辟一块空间,用于保存它的值。

二、变量

1. Python中的变量不需要声明类型

这是根据Python的动态语言特性而来。变量可以直接使用,而不需要提前声明类型。例如下面的a,b,c,d四个变量,在使用前没有进行任何的诸如 int a, str b, list c , int d 的类型声明,而这在C语言和JAVA编程语言中是必须要携带的。

例如:

  1. a = 4 
  2.  b = "haha" 
  3.  c = [] 
  4.  d = 9-5 

2. 用“=”号来给变量赋值

  1. a = 100 

这里的等号要理解并读作“赋值”,而不是“等于”,“赋值”是对变量的操作,而“等于”是对两个变量进行比较。上面的a,b,c,d四个变量,就通过“=”号,赋予了不同的值。

3. 每个变量在使用前都必须赋值,变量赋值以后才会被创建。

新的变量通过赋值的动作,创建并开辟内存空间,保存值。如果没有赋值而直接使用会抛出赋值前引用的异常或者未命名异常。

例如:

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

结果:

4. 在Python中,变量本身没有数据类型的概念

通常所说的“变量类型”是变量所引用的对象的类型,或者说是变量的值的类型。

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

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

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

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

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

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

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

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

  1. x = 1 
  2.  
  3. 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所指向的数据,

例如下面的代码:

  1. a = 'Jack' 
  2. b = a 
  3. a = 'Tom' 
  4. print(b) 
  5. 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中,通常用全部大写的变量名表示常量:

  1. PI = 3.14159265359 

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

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

四、总结

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

使用Python编程语言,方便大家更好理解,希望对大家的学习有帮助。

 

我是Go进阶者,如果觉得还不错,记得动手点赞一下哈。感谢你的观看!

 

责任编辑:武晓燕 来源: Go语言进阶学习
相关推荐

2021-09-11 10:41:27

PythonPickle模块

2023-03-06 21:29:41

mmap技术操作系统

2021-08-05 06:54:05

观察者订阅设计

2022-04-08 09:01:14

CSS自定义属性前端

2021-12-01 11:40:14

Python 输入输出

2021-11-22 06:21:31

Python数据类型Python基础

2021-11-20 10:27:43

Python数据类型

2022-03-24 08:51:48

Redis互联网NoSQL

2021-09-07 09:46:40

JavaScriptGenerator函数

2023-07-04 08:56:07

指针类型Golang

2021-07-21 09:24:25

MongoDB数据库 Python

2020-02-21 20:10:13

搞懂事务隔离级别

2020-05-11 14:35:11

微服务架构代码

2021-03-06 08:04:46

NginxHttpHttps

2022-02-14 21:17:21

RPC框架协议

2021-12-29 17:38:17

JavaScripttypeof前端

2024-04-12 12:19:08

语言模型AI

2020-06-24 12:01:16

Python数据类字符

2021-09-28 07:12:10

avaScriptCurrying柯里化

2021-03-04 00:09:31

MySQL体系架构
点赞
收藏

51CTO技术栈公众号