1 变量
1.1 什么是变量?
变量是编程中的一个核心概念,它用于在内存中存储数据值,并允许这些值在程序运行时被访问和修改。变量是数据的容器,它们具有一个唯一的名称(即变量名),通过这个名称可以引用存储在变量中的数据。与一些其他编程语言不同,Python中的变量不需要事先声明其类型;Python是一种动态类型语言,这意味着变量的类型会在你给它赋值时自动确定。
1.2 变量的作用
-
数据存储:变量提供了存储数据的方式。在程序中,你可能需要处理各种类型的数据,如数字、文本、列表等。变量允许你将这些数据存储起来,以便在需要时能够访问它们。
-
数据操作:通过变量,你可以对数据进行各种操作,如加法、减法、比较等。变量使得这些操作变得简单和直观,因为你可以直接引用变量的名称来进行操作,而不是直接操作原始数据值。
-
数据传递:在程序中,数据经常需要在不同的函数或模块之间传递。变量提供了一种简单的方式来传递数据。你可以将数据存储在变量中,并将该变量作为参数传递给函数或模块,从而实现数据的传递和共享。
1.3 变量的使用
1.3.1 变量的基本组成
Python变量主要由变量名、赋值符号和变量值三部分组成。
变量名 = 变量
变量名用于唯一标识一个变量,它可以是任意长度的字符串,但必须符合Python的命名规则。
赋值符号是等号(=)。它用于将右侧的值或表达式的结果赋给左侧的变量。 赋值操作完成后,变量就会存储该值,并可以在程序的其他部分被引用或修改。
变量值可以是Python支持的任何数据类型,包括整数、浮点数、布尔值、字符串、列表、元组、字典等。
1.3.2 变量的命名规范
1 、变量名只能是字母、数字或下滑线的任意组合
2、变量名的第一个字符不能是数字
3 、关键字不能声明为变量名
4、 常用的关键字有:
False class finally is return
None continue for lambda try
True def from nonlocal while
and del global not with
as elif if or yield
assert else import pass
break except in raise
1.3.3 变量具备的三大特性
1 id:反应的是变量在内存中的唯一编号,内存地址不同id肯定不同
2 type:变量值的类型
3 value:变量值本身
查看三大特性:
# python 解释器环境下执行下列代码
>>> x='jjkk'
>>> id(x),type(x),x
# 输出结果为:4396607153,<class 'str'>,'Info Tony:18'
1.3.4 变量名的命名规范
1 纯小写字母+下划线(kid_age)
2 驼峰命名规则(KidName)
3 字母全大写默认为常量
2 常量
2.1 什么是常量?
常量指在程序运行过程中不会改变的量
2.2 为什么要有常量?
-
提高代码的可读性和可维护性:常量通常用于表示程序中不会改变的值,如数学常数(π、e等)、物理常数(光速、重力加速度等)、系统配置参数(最大用户数量、文件路径等)。使用有意义的常量名代替这些值,可以使代码更加清晰易懂,同时也便于后续的维护和修改。当需要更改这些值时,只需在定义常量的地方进行修改,而无需在代码的各个角落查找并替换这些值。
-
避免硬编码:硬编码(hardcoding)是指在代码中直接写入具体的值,而不是通过变量或常量来引用。硬编码的值在程序运行时无法更改,且当需要修改这些值时,必须直接修改代码,这增加了出错的风险和维护的难度。通过使用常量,可以避免硬编码,使代码更加灵活和可维护。
-
增强代码的安全性:在某些情况下,将敏感信息(如数据库密码、API密钥等)作为常量存储在代码中,并通过适当的访问控制机制来保护这些常量,可以增强代码的安全性。虽然这并不意味着将敏感信息硬编码在代码中是一个好的做法(更好的做法是将这些信息存储在外部配置文件中或环境变量中),但在某些情况下,使用常量来引用这些信息仍然是一种可行的选择。
-
促进模块化设计:在模块化设计中,常量通常被定义在模块级别或包级别,以便在整个模块或包中共享。这样做可以减少代码重复,提高代码的重用性,并促进模块化设计。
2.3 怎么使用常量?
在Python中没有一个专门的语法定义常量,约定俗成是用全部大写的变量名表示常量。所以单从语法层面去讲,常量的使用与变量完全一致。