摘要:这一点很微小,但非常强大。有时候你需要一个循环或一个你实际上不会使用的值。比如:
这一点很微小,但非常强大。有时候你需要一个循环或一个你实际上不会使用的值。比如:
for _ in range(3):print("Hello")过去会像这样命名那些东西,比如 i 或 temp,但它们并没有起到任何作用。现在我直接使用 _ 来表示“我不关心这个。”更简洁。更清晰。这在解包时也同样适用:
name, _, age = ("John", "something", 30)这样做的好处:
代码看起来不再那么杂乱。
过去会像这样检查一个键是否在字典中:
if "key" in my_dict:value = my_dict["key"]else:value = "default"现在?只做:
value = my_dict.get("key", "default")技巧:
在处理嵌套数据时,它也是一个救星。不再有 KeyErrors。不再有丑陋的 if 语句。
它为何有帮助:
更少的行数。更少的错误。更容易阅读。
它为什么有帮助:
非常适合保持可读性的单行代码。非常适合快速转换列表。
以前会这样写:
temp = aa = bb = temp这样更简洁:
a, b = b, a它为什么有帮助:
减少输入。代码更整洁。在交换值时减少错误。
旧习惯:
i = 0for item in items:print(i, item)i += 1现在:
for i, item in enumerate(items):print(i, item)额外技巧:
你甚至可以从不同的索引开始:
它有什么帮助:
更少的行数。更易读。而且你不会忘记自增。
与其循环和写条件语句,使用:
if any(x > 10 for x in my_list):print("At least one is big")if all(x > 0 for x in my_list):print("All are positive")没有循环。没有标志。只有真相。
它为何有帮助:
我的条件检查更简短,一目了然,更容易理解。
无需调用 f.close。即使程序崩溃也无需担心。Python 会自动处理。
它为何有帮助:
更少的错误。更简洁的语法。
来源:自由坦荡的湖泊AI