7-变量与常量

简介: Python

变量与常量
变量:在程序运行过程中,值会发生变化的量
常量:在程序运行过程中,值不会发生变化的量
无论是变量还是常量,在创建时都会在内存中开辟一块空间,用于保存它的值。
这里有一点需要注意的是,在python中是不需要声明类型的。这是根据Python的动态语言特性而来。变量可以直接使用,而不需要提前声明类型。
变量的定义
Python 中的变量不需要声明类型
image.png

这些变量都是不需要声明它的类型的,在C和Java中是必须要声明的。这里的=是赋值而不是等于的意思。每个变量在使用前都必须赋值,变量赋值以后才会被创建。如果一个变量没有赋值,直接用的话。系统会报出错误
这里的等号要理解并读作“赋值”,而不是“等于”,“赋值”是对变量的操作,而“等于”是对两个变量进行比较。
每个变量在使用前都必须赋值,变量赋值以后才会被创建
新的变量通过赋值的动作,创建并开辟内存空间,保存值。如果没有赋值而直接使用会抛出赋值前引用的异常或者未命名异常
image.png

Python中,一切事物都是对象,变量引用的是对象或者说是对象在内存中的地址。
后面我们详细来讲解

在Python中,变量本身没有数据类型的概念
通常所说的“变量类型”是变量所引用的对象的类型,或者说是变量的值的类型
image.png

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

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

Python允许同时为多个变量赋值。
image.png

当我们写:

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

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

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

思考
image.png

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

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

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

最后我们还要说下常量!
常量就是不变的变量,比如常用的数学常数圆周率就是一个常量。在Python中,通常用全部大写的变量名表示常量:
PI = 3.14159265359
但事实上,从Python语法角度看,PI仍然是一个变量,因为Python根本没有任何机制保证PI不会被改变。你完全可以给PI赋值为10,不会弹出任何错误。所以,用全部大写的变量名表示常量只是一个习惯上的用法。

相关文章
|
6月前
|
存储 C++
C++的变量和常量
C++的变量和常量
36 1
|
6月前
|
存储 C++
C++系列三:变量、常量
C++系列三:变量、常量
|
6月前
|
存储 Unix 编译器
变量和常量
这篇内容介绍了编程中的变量概念和使用。变量是可变的存储单元,用于存放数据,其值在程序运行期间可以改变。变量需先定义后使用,声明时指定类型,如`类型关键字 变量名;`。变量可分为局部变量(在代码块内定义)和全局变量(代码块外),全局变量在整个程序中可见,局部变量只在定义它的代码块内有效。初始化变量时,未赋值的变量值可能是随机的。编程最佳实践建议使用有意义的标识符,并遵循特定平台的风格。此外,常量是不可变的,可以通过宏常量(`#define`)或`const`关键字定义,常量有助于提高代码可读性和维护性。不同数据类型支持不同的运算操作。
41 0
|
6月前
|
存储 算法 Java
常量和变量
常量和变量
37 1
|
5月前
|
C++
C++之变量与常量
C++之变量与常量
|
6月前
|
程序员 编译器 C++
c++常量
c++常量
60 0
|
6月前
|
安全 编译器 C++
5常量
5常量
34 1
|
6月前
1-5 运算量 变量 和 常量
1-5 运算量 变量 和 常量
28 0
|
6月前
变量与常量
变量与常量
33 0
|
6月前
|
存储 C++ 容器
【C/C++】C/C++编程——变量和常量
【C/C++】C/C++编程——变量和常量
90 0