如何在 Python3 中使用变量?
变量是内存中某个位置的名称。它可用于保存一个值并引用计算机程序中存储的值。解释器分配内存并决定可以在保留内存中存储什么。因此,通过为变量分配不同的数据类型,您可以在这些变量中存储整数、字符串、小数、复数。 Python 3 中的赋值运算符是单个等号 (=)。该运算符将右侧的值分配给左侧的变量。
示例 1:在变量中赋值:
# this is a integer type variable
number = 123456
# this is a string type variable
sentence = "this is a string"
# print integer
print(number)
# print string
print(sentence)
输出:
123456
this is a string
示例 2:多重赋值: Python允许我们同时将一个值分配给多个变量
# assign single value to multiple variables
a = b = c = d = e = 123
# print a
print(a)
# print b
print(b)
# print c
print(c)
# print d
print(d)
# print e
print(e)
输出
123
123
123
123
123
创建一个值为 123 的整数,并将所有五个变量(例如(abcde))分配到相同的内存位置。
示例 3:将多个对象分配给多个变量:
# assign multiple objects to multiple variables
var1, var2, var3 = 123, 5.0, "this is string"
# print var2
print(var1)
# print var2
print(var2)
# print var3
print(var3)
输出:
123
5.0
this is string
将一个值为 123 的整数对象 var1、一个值为 5.0 的十进制对象 var2 和一个值为“this is 字符串 ”的字符串对象分配给变量 var3。
示例 4:全局和局部变量:全局变量在全局范围内或任何函数之外声明,这意味着全局变量可以在任何函数的外部或内部访问。局部变量在任何函数的范围内声明。局部变量只能在其声明的函数范围内访问。如果我们尝试访问其函数之外的局部变量,那么这是一个错误。
# global variable
g_var = "global variable"
# create a function
def fun1():
# declare a local variable
l_var = "local variable"
# print global variable
print(g_var)
# print local variable
print(l_var)
# call fun1
fun1()
# print global variable again
print(g_var)
输出:
global variable
local variable
global variable
这里全局变量打印两次,因为我们在 fun1 中调用了两次全局变量,在函数外调用了第二次。
示例 5:非局部变量:Nonlocal 关键字用于创建非局部变量。非局部变量用于未定义局部范围的嵌套函数。这意味着该变量既不能在本地也不能在全局范围内。
# declare fun1
def fun1():
# create a local variable for fun1
var = "local"
# declare fun2
def fun2():
# declare nonlocal function
nonlocal var
# assign value in nonlocal variable
var = "nonlocal"
# print inner var
print("inner:", var)
# call fun2
fun2()
# print outer var
print("outer:", var)
# call fun1 for executing the program
fun1()
输出:
inner: nonlocal
outer: nonlocal
注意:如果我们更改非局部变量的值,更改会出现在局部变量中。