1. Python 基础教程
  2. 在 SublimeEditor 中配置 Python 环境
  3. Python 代码中添加注释
  4. Python 中的变量的使用
  5. Python 中的数据类型
  6. Python 中的关键字
  7. Python 字符串操作
  8. Python 中的 list 操作
  9. Python 中的 Tuple 操作
  10. Python max()和 min()–在列表或数组中查找最大值和最小值
  11. Python 找到最大的 N 个(前 N 个)或最小的 N 个项目
  12. Python 读写 CSV 文件
  13. Python 中使用 httplib2–HTTP GET 和 POST 示例
  14. Python 将 tuple 开箱为变量或参数
  15. Python 开箱 Tuple–太多值无法解压
  16. Python multidict 示例–将单个键映射到字典中的多个值
  17. Python OrderedDict–有序字典
  18. Python 字典交集–比较两个字典
  19. Python 优先级队列示例

本文旨在帮助您了解 Python 中的 变量,包括如何声明局部变量和全局变量,以及如何在函数内部使用 global 关键字。

1. 创建变量

1.1 简单赋值

Python 没有用于声明变量的关键字。当我们首次为变量赋值时,变量会立即被创建。

i = 20
blogName = "howtodoinjava"

print(i)  # prints 20
print(blogName)  # prints howtodoinjava

可以使用单引号或双引号来创建字符串类型的变量。

author = 'Lokesh'
blogName = "howtodoinjava"

print(author)  # prints Lokesh
print(blogName)  # prints howtodoinjava

1.2 链式赋值

Python 允许链式赋值,这使得可以将相同的值同时分配给多个变量。

i = j = k = 20

print(i)  # prints 20
print(j)  # prints 20
print(k)  # prints 20

1.3 单行多变量赋值

Python 允许您在一行中将不同的值分配给多个变量。

x, y, z = "A", "B", 100

print(x)  # prints A
print(y)  # prints B
print(z)  # prints 100

1.4 变量重新赋值

由于变量不需要声明数据类型,我们可以毫无问题地重新分配任何类型的新值。在 Python 中,可以为变量分配一种类型的值,然后在后续代码中重新分配其他类型的值。

index = 10
index = 20
index = "NA"

print(index)  # prints NA

2. 命名约定

在 Python 中创建变量需遵循以下规则:

  • 变量名必须以字母或下划线字符开头
  • 变量名不能以数字开头
  • 变量名称只能包含字母数字字符和下划线 (A-z, 0-9, and _ )。
  • 变量名称区分大小写。例如,nameNameNAME 是三个不同的变量。
注意: Python 3 具有完整的 Unicode 支持,它也允许在变量名中使用 Unicode 字符(如中文变量名),但为了代码的可移植性和规范性,通常建议仅使用 ASCII 字符。

3. 局部变量与全局变量

3.1 创建局部变量和全局变量

  • 在函数内部创建的变量称为局部变量(Local Variable)。
  • 在函数外部创建的变量是全局变量(Global Variable)。全局变量可以被函数内部和外部的代码访问。
x = 10  # global variable

def myfunc():
    y = 10  # local variable
    print("Sum of x and y = " + str(x + y))  # prints Sum of x and y = 20

myfunc()
# 下面这行代码会报错,因为 y 是局部变量
# print("Sum of x and y = " + str(x + y))  # NameError: name 'y' is not defined

3.2 局部变量限制在函数范围内

如果在函数内部创建了一个与全局变量同名的变量,则该变量被视为局部变量,且仅在函数内部有效。具有相同名称的全局变量将保持原样,并具有原始值。

x = 10  # global variable

def myfunc():
    x = 20  # local variable
    print("x is " + str(x))  # prints x is 20

myfunc()
print("x is " + str(x))  # prints x is 10

3.3 global 关键字

若要在函数内部修改全局变量,或创建一个新的全局变量,可以使用 global 关键字。

x = 10  # global variable

def myfunc():
    global y
    y = 10  # global variable created inside function
    print("Sum of x and y = " + str(x + y))  # prints Sum of x and y = 20

myfunc()
print("Sum of x and y = " + str(x + y))  # prints Sum of x and y = 20

如果您有关于 Python 变量的疑问,欢迎留言交流。祝您学习愉快!

说明: 本文示例基于 Python 3 语法(如 print() 函数)。如果您使用的是 Python 2,请注意语法差异。