摘要:在 Python 3.8 中引入的 walrus 运算符 ( := ),正式名称为赋值表达式,是一种将值赋值与表达式相结合的新语法。此运算符可以通过减少行数和对重复表达式的需求来简化代码。
在 Python 3.8 中引入的 walrus 运算符 ( := ),正式名称为赋值表达式,是一种将值赋值与表达式相结合的新语法。此运算符可以通过减少行数和对重复表达式的需求来简化代码。
walrus 运算符允许将值作为较大表达式的一部分分配给变量。这意味着可以计算表达式并将其结果分配给同一操作中的变量,这在需要重用值的循环和条件语句中特别有用。
1. 循环内 while
海象运算符的一个常见场景是读取输入,直到满足特定条件:
# Collecting user input until a blank line is enteredlines = while (line := input("Enter something (leave blank to quit): ")) != "": lines.append(line)import random# Generating and filtering random numbersnumbers = [n for _ in range(10) if (n := random.randint(1, 100)) > 50]print(numbers)此示例生成 10 个随机数,并且仅包含列表中大于 50 的随机数,所有这些随机数都包含在一个简洁的表达式中。
# Checking the length of a list and using it in the same conditiona = [1, 2, 3]if (n := len(a)) > 2: print(f"The list is long enough ({n} elements).")在这里,列表 a 的长度被计算、分配给 n ,并在一行中进行检查。
walrus 运算符 ( := ) 是 Python 的一个有价值的补充,它可以简化表达式中的赋值,从而生成更干净、更高效的代码。它能够将计算和赋值结合起来,这在循环和条件语句中特别有用,可以减少冗余并增强代码的可读性。当您将 walrus 运算符合并到 Python 项目中时,您可能会发现它简化了编码任务的许多场景。
来源:自由坦荡的湖泊AI一点号
免责声明:本站系转载,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与本站联系,我们将在第一时间删除内容!