写点什么

#yyds 内容盘点# 一文带你搞懂 Python 中变量与常量

作者:程序媛可鸥
  • 2022 年 3 月 15 日
  • 本文字数:1617 字

    阅读完需:约 5 分钟

Hey,大家好呀,我是 IT 界搬运喵。


今天直接给你们带来点干货,一文带你搞懂 Python 中变量与常量。


一、变量、常量的区别




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


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


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


二、变量



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

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


例如:


a = 4


b = "haha"


c = []


d = 9-5

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

a = 100


这里的等号要理解并读作“赋值”,而不是“等于”,“赋值”是对变量的操作,而“等于”是对两个变量进行比较。上面的 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 基础中变量和常量的区别,对于变量的用法做了详细的讲解,用丰富的案例 ,代码效果图的展示帮助大家更好理解 。使用 Python 编程语言,方便大家更好理解,希望对大家的学习有帮助。我是 IT 界搬运喵,如果觉得还不错,记得动手点赞一键三连呀。如果有自己更好的看法跟见解,欢迎在评论区留言讨论!感谢你的观看!

用户头像

Python编程资料加Q群免费领取:419829237 2022.03.14 加入

还未添加个人简介

评论

发布
暂无评论
#yyds内容盘点# 一文带你搞懂Python中变量与常量_Python_程序媛可鸥_InfoQ写作平台