Dotcpp  >  编程教程  >  Python基础语法  >  Python变量

Python变量

点击打开在线编译器,边学边练

在编程语言中,变量是一个必不可少的词,大家也可以把变量理解成名字,也可以理解为一个标签。

举个例子来讲解一下变量,比如我们购买了一套名为“dotcpp”的房子,我们在“dotcpp”这个房子里存放了1000本书,我们可以这样来定义:

dotcpp = 1000

再举个例子,当你的信到了邮局,你到了邮局之后只需要提供你的名字或者身份证号或者手机号等信息,工作人员就会通过你的名字及附属信息去找到相应的信。

大家将变量看做名字更方便于掌握,大家都有属于自己的名字,一般来说名字是不会去轻易修改的,但是大家的体重会变化,所以名字即为变量。

1. 定义变量

Python的变量和其他语言不太一样,在python中不需要提前声明变量及其类型,可以直接赋值即创建各种类型的变量。定义变量需要遵守规则:

1)选择有意义的单词作为变量。

2)不可以使用关键字作为变量。

3)变量需要是一个有效的标识符。

4)避免使用0和1

变量的赋值通过‘=’来实现。格式为:变量 = 值,例如:

Name = '李华' #创建值为‘李华’的name变量
age = 18      #创建值为‘18’的age变量
classname = '19级计算机1班'     #创建值为‘19级计算机1班’的name变量

需要注意的是,如果在定义班级的时候使用class作为变量,则会报错,因为class是关键字不可以作为变量。

2. 变量类型是可变的

Python是一门动态语言,因此变量的类型是可以随时发生变化的,可能我们开始定义的时候,变量名是int类型,但是我们通过强制类型转换最后成了浮点型等其他类型。   

通过下面例子来看一下(解释都在注释里):

 age = 18
 print(age)#打印age看一下值
 print(type(age))#这里通过type()函数来输出age的类型
 age = float(age)#强制类型转换把age转换为浮点型
 print(age)#再输出一下age的值,看看什么变化
 print(type(age))#最后看一次age的类型

输出结果为:

18
<class 'int'>
18.0
<class 'float'>

3. 多个变量指向同一个值

在Python中,多个变量可以指向同一个值,我们将3个变量都赋值为1024,再分别使用内置函数id()来访问变量的内存地址,可以得到同一个结果,看下面代码:

here = there = that = 1024
print('变量here在内存中的地址:',id(here))
print('变量there在内存中的地址:',id(there))
print('变量that在内存中的地址:',id(that))

输出结果为:

变量here在内存中的地址: 51695856
变量there在内存中的地址: 51695856
变量that在内存中的地址: 51695856

通过输出结果我们可以看出这些变量对应的地址是同一个地址,在不同电脑上对应的地址可能是不相等的,但三个元素对应的内存地址是一致的。

在这里需要注意的是赋值的时候需要同时赋值,这样能确保三个变量使用的是同一个值的地址,如果分别对三个变量赋同一个值,这样有可能会导致三个变量在内存中被分配了三个不同的地址。

4. 总结

本章我们学习了变量的概念及用法,下面三小节我们来学习Python的基础数据类型。



本文固定URL:https://www.dotcpp.com/course/222

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

Python教程
第一章 Python入门
第二章 Python基础语法
第三章 Python入门语法
第四章 Python核心语法
第五章 Python函数
第六章 Python面向对象编程
第七章 Python模块
第八章 Python异常处理和程序调试
第九章 Python文件及目录操作
第十章 PythonGUI编程
第十一章 Python进程和线程
第十二章 Python数据库管理
第十三章 Python算法
第十四章 Python爬虫
第十五章 Python实战项目
第十六章 后记
Dotcpp在线编译      (登录可减少运行等待时间)