返回
每天学点Python小技巧(6): 丢弃变量,让你的代码更简洁
闲谈
2023-11-16 17:24:33
各位铁汁们,大家好!今天咱们来聊聊Python里一个容易被忽略的小技巧——丢弃变量,它能显著提升代码的可读性和简洁度。
在Python中,有这样一个下划线符号“”,它可不是用来凑数的,而是有着特殊含义。当我们给变量赋值为“”时,就相当于告诉Python:“哥,这个变量我不需要,你把它丢掉吧!”
这种丢弃变量的技巧,尤其适合以下场景:
- 当我们需要从函数中返回多个值,但其中某个值我们不关心。
- 当我们需要迭代一个序列,但只关心序列中的某些元素。
- 当我们需要临时存储一个值,但不想创建新的变量。
举个例子,假如我们有一个函数,它返回一个元组,其中包含一个布尔值和一个字符串。但我们只关心布尔值,字符串可以丢弃。此时,我们可以这样写:
def get_result():
return True, "some string"
result, _ = get_result()
通过给第二个返回值赋值为“_”,我们就成功丢弃了字符串。代码变得更简洁,也更容易理解。
再来看另一个例子,假如我们想迭代一个列表,并打印出其中的偶数。我们可以这样写:
for number in [1, 2, 3, 4, 5, 6]:
if number % 2 == 0:
print(number)
但如果我们只想用一个变量来存储偶数,而不关心奇数,可以这样写:
for number, _ in enumerate([1, 2, 3, 4, 5, 6]):
if number % 2 == 0:
print(number)
通过在for循环中使用“_”,我们只获取了偶数的索引,丢弃了奇数的索引。
除了丢弃不必要的变量,下划线“_”还可以用来临时存储值。比如,我们有一个函数,需要对一个列表进行排序。但排序前,我们需要先把列表中的第一个元素保存起来。我们可以这样写:
def sort_list(list):
temp = list[0]
list.sort()
list.insert(0, temp)
通过给“temp”变量赋值为“_”,我们可以更简洁地实现同样的功能:
def sort_list(list):
_, list.sort()
list.insert(0, _)
怎么样,这些小技巧是不是让你大开眼界?丢弃变量,让你的Python代码更上一层楼,成为一名代码大师吧!