Python 标识符与变量


2021年8月23日, Learn eTutorial
2120

本 Python 教程是关于关键字的上一篇教程的延续。标识符和变量是任何编程语言的其他基本构建块。在本教程中,您将详细了解这些 Python 的基本工具。

Python 标识符

Python 标识符是用户定义的用于变量、函数、类等名称。用户可以通过遵循以下规则来定义有效的 Python 实体名称。

  1. Python 标识符是区分大小写的,因此大写、小写及其混合表示被视为不同。例如:
    ADD, Add & add are considered as different identifiers
    
  2. Python 标识符必须以字母(大写或小写)或下划线 (_) 开头,后跟字母数字字符或下划线。
    #Python valid identifiers example  
    _alpha , __beta, Theta_1,  _1day, Day, WEEK, M!
    
  3. Python 标识符不能以数字(0 到 9)开头。例如,7Days 是一个无效标识符。
    7colours  # invalid identifier example
    _7colours #valid identifier

     

  4. Python 标识符可以包含字母数字字符,但不能包含特殊字符,如 %、@、#、$...。例如,#tag 是一个无效标识符。
    %per, $twenty,  #tag  #invalid identifiers

     

Python 变量

Python 变量充当存储数据的容器。换句话说,每当创建变量时,都会在内存中分配一定量的空间来存储数据。此空间分配取决于变量的数据类型,您将在后续教程中学习。

Python 中的变量声明和赋值

与其他编程语言相比,Python 不需要特定的变量声明。在为变量赋值时,Python 会自动声明具有适当数据类型的变量,从而为该值分配足够的内存。

示例 1:简单的 Python 程序

age = 17
first_name = ‘Robert’
print(age)
print(first_name) 

在上面的示例中,age 是一个存储值 17 的容器。我们通过使用赋值运算符 = 为整数值 17 赋值,创建了一个名为 age 的 Python 变量。在这里,Python 会自动将其推断为整数类型,并在内存中为此 Python 变量 age 分配 2 字节(或 4 字节)空间。同样,Python 变量 first_name 存储字符串类型的值 Robert

输出

17
Robert

示例 2:简单的 Python 程序

first_name = ‘Robert’
print(first_name)
first_name = ‘Charles’
print(first_name)
first_name = “Charles”
print(first_name) 

输出

Robert
Charles
Charles

在此示例中,变量 first_name 最初被赋值为 Robert,之后修改为 Charles,这表明 Python 变量的值可以随时更改。

此外,Python 认为字符串变量的单引号 (' ) 和双引号 (" ) 表示方式是相同的。


为多个变量设置多个值

Python 允许在一行中为多个变量分配多个值。请看下面:

示例 3:多个变量

a, b, c = “Apple”, “Ball” ,”Cat”
I, F, S = 10, 9.99, TEN
print (a)
print (b)
print (c)
print (I, F, S) 

输出

Apple
Ball
Cat
10, 9.99, TEN

为多个变量设置单个值

同样,在 Python 中,我们可以使用以下格式将单个值分配给多个变量。

示例 4:为多个变量设置单个值

A = B = C = “Apple” 
print (A)
print (B)
print (C)

输出

Apple
Apple
Apple

Python 中的全局变量和局部变量

在 Python 中,变量可以在 Python 函数的内部或外部声明。根据声明,我们可以确定变量的作用域,即作用域是在函数内部还是在函数外部。因此,Python 变量分为两类,即局部变量和全局变量。

现在,让我们在 Python 编程语言中比较全局变量和局部变量。

全局变量

  1. 全局变量可以定义为在整个函数中都有效的变量。
  2. 它们在函数内外都处于活动状态,因此变量的作用域是全局的。
  3. 在函数内声明的全局变量始终以前缀 Python 关键字“global”开头。
  4. 程序中的所有函数都可以访问全局变量。

局部变量

  1. 局部变量可以定义为仅在函数内有效的变量。
  2. 它们在函数外部不活跃,因此变量的作用域仅限于给定的函数。因此,变量的作用域被限制在局部。
  3. 局部变量声明为普通变量,没有特定的关键字表示法。
  4. 局部变量的可访问性仅限于创建该变量的函数。因此,其他函数无法访问局部变量。

Variables

上图显示了 Python 程序中全局变量和局部变量的通用视图。Python 程序 PGM 包含变量 X、Y、Z 和 A,以及函数 F1、F2 和 F3。从图中,我们可以得出以下几点:

  1. 在 Python 编程语言中,在程序中且在所有函数之外声明的 Python 变量 X 始终被视为全局变量。并且它可以访问 Python 程序中的所有函数。
  2. 函数 F1 包含其局部变量 Y,如果需要,可以访问变量 X。
  3. 函数 F2 包含其局部变量 Z,如果需要,可以访问变量 X 和 Y,因为 F2 是一个嵌套函数。
  4. 函数 F3 包含其局部变量 A,如果需要,可以访问变量 X。您将在我们接下来的教程中学习 Python 函数。

Python 中的常量变量

常量可以定义为一种变量,其值在一段时间内保持不变。具体来说,值不能被更改。

在实践中,常量在 Python 编程语言中并不常用。常量通常包含在模块中。模块只是一个文件或一个容器,用于保存变量、函数等。

常量变量声明和赋值

  1. 创建带有 .py 扩展名的模块/文件,例如 constant.py。
  2. 设置带有值的变量。这里常量变量的表示必须是大写的,以将其与普通变量区分开。PI = 3.14 GRAVITY = 9.8
  3. 现在将这个新创建的模块 constant.py 导入到 main.py 中。
    import constant
    print(constant.PI)
    print(constant.GRAVITY) 
    
    输出
    3.14
    9.8