【python基础】变量

视频网址:
变量01
变量02

1.变量-理解

编程本质就是通过一定的逻辑,去操纵数据,来达到我们的设想。

变量作为数据的载体,在程序中经常会被用到。与变量相联系的还有一个名词叫数据类型,如何理解数据类型-变量-数据三者之间的关系呢?

image

我们通过文字解读可以发现,每辆车装载着不同的食物,抽象到Python中来说的话,就是每个变量装载着不同的数据,那么数据类型又是什么呢,我们可以发现如果把苹果、土豆、猪肉进行分类的话,是不是可以分别分成水果、蔬菜,肉类。抽象到Python中来说的话,就是每个数据对应着一种数据类型。

在python中如何表示上面的关系呢?python规定变量不需要声明数据类型,但是每个变量在使用前都必须赋值,根据变量所赋的值自动确定数据类型,变量赋值以后,该变量才会被创建。
等号(=)用来给变量赋值。
等号(=)运算符左边是一个变量名,等号(=)运算符右边是装载在变量中的数据值。
我们在PyCharm的编辑区编写如下代码,来加强上面这句话的理解

image

这里的'苹果'是我们后期所介绍的字符串类型,2000是我们后期所介绍的数字类型
为了更好的理解,这里我们做个假设,假设python需要声明数据类型的话,这里的代码就要变成
字符串类型 car1 = '苹果'
数字类型 car2 = 2000
上面的这两行代码,我们在可以简单解读为,我们声明了两个变量:
一个字符串类型的变量,变量名为car1,变量car1中装载着数据内容'苹果';
一个数字类型的变量,变量名为car2,变量car2中装载着数据内容2000;

这里的数据内容'苹果'和数据内容2000在python底层是通过地址引用来实现的,存储的不是数据内容本身而是数据内容的地址值,但我们刚开始学习,可以简单理解为装载的是数据内容本身

理解了上面的解读之后,我们抛开假设之后,用现在python的规定,变量不需要声明数据类型,但是每个变量在使用前都必须赋值,根据变量所赋的值自动确定数据类型,变量赋值以后,该变量才会被创建。
car1 = '苹果'
car2 = 2000
上面的这两行代码,我们可以将其运行过程解读为,我们声明了两个变量:
其中一个将'苹果'这个数据内容装载到了一个变量名为car1的变量中,因为'苹果'这个数据内容为字符串类型,所以python自动将car1的数据类型确定为了字符串类型。
其中一个将2000这个数据内容装载到了一个变量名为car2的变量中,因为2000这个数据内容为数字类型,所以python自动将car2的数据类型确定为了数字类型。
但是,经过程序运行,结果上我们还是认为,我们声明了两个变量:
一个字符串类型的变量,变量名为car1,变量car1中装载着数据内容'苹果';
一个数字类型的变量,变量名为car2,变量car1中装载着数据内容2000;

这里的数据内容'苹果'和数据内容2000在python底层是通过地址引用来实现的,存储的不是数据内容本身而是数据内容的地址值,但我们刚开始学习,可以简单理解为装载的是数据内容本身

2.变量修改

在介绍变量修改之前,我们之前学习过print函数的语法格式:print('想要输出的内容')或者print("想要输出的内容")
在我们初步学习了变量之后,我们可以再学习print函数的另一种语法格式:print(变量名),这种语法格式下,输出的是该变量所装载的数据内容
在清楚了上面的内容之后,我们将程序代码修改成如下所示

image

在上面的基础上,我们再进行代码的添加,看运行结果,如下所示

image

通过运行结果我们可以发现,第一次输出变量car1是'苹果',第二次输出变量car1是'香蕉'。两次输出结果的不同,我们可以推导出此处发生了变量所装载的数据内容的更新。更新过程就是将car1所装载数据内容'苹果'变为了'香蕉'

那么是否能够发生数据类型的更新呢,我们再编写如下程序:

image

通过运行结果我们可以发现,第一次输出的data是字符串类型的'苹果',第二次输出的data是数字类型的2000,通过运行结果我们可以推出,变量的更新是可以发生在数据类型上的。

经过上面的分析,我们还可以发现,在程序中可随时修改变量的值,而python将始终记录变量的最新值。

本文中所提到的变量装载数据内容,是作为初学者的简单形象理解,要是深究Python的底层原理,变量装载的是地址值,该地址值指向数据内容。

3.命名变量

在python中使用变量,给变量命名时,需要遵守一些规则,违反这些规则将引发错误,所以请务必牢记下面有关变量的规则。
①变量名只能包含字母、数字和下划线。
②变量名可以字母或下划线开头,但不能以数字开头。合法命名string_1,但不能将其命名为1_string
③变量名不能包含空格,但可以使用下划线来分隔其中的单词。合法命名first_string,但变量名first string不可以
④变量名不能是python的关键字和内置函数名,如print

4.多变量赋值

python允许同时为多个变量赋值。编写程序如下所示

image

上面程序的执行流程,将1从后向前赋值,三个变量被赋予相同的数值。
也可以为多个对象指定多个变量。编写程序如下所示

image

按照顺序依次赋值,将整型数据1赋值给变量a,将浮点型数据11.0赋值给变量b,将字符串数据'我是c'赋值给变量c

5.删除变量

del关键字具有删除变量的作用,编写程序如下所示:

image

我们发现我们把变量car1删除后,再对car1进行输出会出现错误提示,提示car1没有被定义。

练习题

1.想一下如果要收集一个人的信息,这些信息应该用什么变量表示,比如姓名,年龄,性别,住址等等,将这些变量进行创建,输出等操作

posted @ 2023-05-26 20:37  乐吧编程  阅读(398)  评论(0编辑  收藏  举报