Python变量以及常量

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

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

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

Python的变量和常量不需要事先声明类型,在使用前没有进行任何的诸如 age int 和 name string 的类型声明,

而这在一些静态语言中,比如 JAVA 和 Golang 中是必须的。

Python变量以及常量_第1张图片 

 

Python中用=号来给变量赋值,比如age=18这个表达式,age这个变量的值就是18

与之相似的是两个等号==,它表示的是两个值是否相等,如果相等返回true,如果不相等返回false

先创建再使用

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

新的变量通过赋值的动作,创建并开辟内存空间,保存值

如果没有赋值而直接使用,会抛出变量未定义的异常,

赋值的方式有:

第一种:单个直接赋值

第二种:多个批量赋值

第三种:先计算再赋值

第四种:分别赋值

Python变量以及常量_第2张图片

 

这四种的效果都是一样的

理解赋值的背后:

当我们写a="June"时,Python解释器做了两件事

1.在内存中创建了一个 June的字符串对象

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

当你变量a赋值给变量b时,这个操作实际上是将变量b指向变量a所指向的对象,例如

Python变量以及常量_第3张图片

 

通过id()可以查看变量值的内存地址打印出来的 a 和 b的内存地址是一样的,因此二者其实是一个数据

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

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

执行b=a编译器创建变量b,并且将其指向变量a指向变量字符串Jack对象

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

而常量是指程序执行的整个过程中,不能被改变的值。简单来说,变量和常量都是程序设计是用来存取数据内容的一个识别代码,两者最大的差异在于变量的内容会随着程序执行而改变,但常量则固定不变,就是不变的变量,比如常用的数学常数圆周率就是一个常量。在Python中,通常用全部大写的变量名表示常量:

 

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

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

如何定义字符串

字符串是Python中最常见的数据类型之一

使用单引号或双引号来创建字符串,使用三引号创建多行字符串。字符串要么使用两个单引号,要么两个双引号,

不能一单一双!Python不支持单字符类型,单字符在Python中也是作为一个字符串使用

以下四种写法是等价的

Python变量以及常量_第4张图片

 

如果一个字符串里,要有引号,那么最好和外部包裹的引号类型不同,比如

外层使用单引号,那么里层使用双引号

外层使用双引号,那么里层使用单引号

若想使用一样的符号呢?那字符串里的引号前记得加转义符号:\

Python变量以及常量_第5张图片

 

你可能感兴趣的:(python)