变量初始化和赋值技巧
多重赋值
可以同时对多个变量进行赋值。例如,a, b, c = 1, 2, 3,这样就一次性将 1 赋值给a,2 赋值给b,3 赋值给c。这在交换变量值时也非常方便,比如a, b = b, a,可以直接交换a和b两个变量的值,而不需要借助中间变量。
链式赋值
可以将同一个值赋给多个变量,如x = y = z = 10,这种方式使得x、y和z都被赋值为 10。不过需要注意的是,这三个变量在内存中实际上是指向同一个对象,对于可变对象可能会带来一些意想不到的结果。例如,对于列表这样的可变对象,改变其中一个变量所指向的列表,其他变量也会受到影响。
变量类型相关技巧
动态类型检查和转换
可以使用type()函数来检查变量的类型。例如,a = 5,print(type(a))会输出<class 'int'>,这有助于在调试或者不确定变量类型时进行检查。如果需要转换变量类型,可以使用相应的类型转换函数,如int()、float()、str()等。例如,a = "5",将其转换为整数可以使用int(a),得到整数 5。
利用可变和不可变类型特点
Python 中的整数、字符串等是不可变类型,而列表、字典等是可变类型。对于不可变类型,每次对变量进行修改操作(如字符串拼接)实际上是创建了一个新的对象。例如,a = "hello",b = a + " world",这里a并没有改变,而是创建了一个新的字符串b。对于可变类型,如列表,可以直接在原对象上进行操作。例如,my_list = [1, 2, 3],my_list.append(4)就直接在my_list这个对象上添加了一个元素 4。
变量作用域技巧
理解全局变量和局部变量
在函数内部定义的变量通常是局部变量,只在函数内部有效。例如:
def my_function():
local_var = 10
print(local_var)
my_function()
print(local_var) # 这会导致错误,因为local_var是局部变量,在函数外部不可用
而全局变量可以在整个模块(文件)中访问。如果要在函数内部访问和修改全局变量,可以使用global
关键字。例如:
global_var = 20
def modify_global_var():
global global_var
global_var += 1
print(global_var)
modify_global_var()
print(global_var) # 输出21,因为在函数内部修改了全局变量
合理利用闭包中的变量作用域
闭包是一个函数对象,它可以访问并记住其定义时所在的外部函数中的变量。例如:
def outer_function(x):
def inner_function(y):
return x + y
return inner_function
add_five = outer_function(5)
print(add_five(3)) # 输出8,因为inner_function记住了outer_function中的x = 5
变量命名技巧(有助于变量使用)
采用有意义的命名
变量名应该能够清晰地反映变量所代表的内容。例如,student_names比sn更能清楚地表示这个变量是用来存储学生名字的列表。对于一些临时变量或者简单的循环变量,可以使用简单但仍有一定表意性的名称,如i、j用于循环计数,temp用于临时存储数据。
遵循命名风格
推荐使用蛇形命名法(Snake Case),即全部小写字母,单词之间用下划线分隔。这种命名风格在 Python 中广泛应用于变量名、函数名和模块名,使得代码更加清晰易读。例如,file_path、user_age等。
标签:function,技巧,Python,global,print,var,赋值,变量 From: https://blog.csdn.net/weixin_47362565/article/details/144710049