如何检查变量是否等于某个变量,并在子范围内设置为新变量?
例如:
bar = 'foobar'
my_slice = bar[:3]
if my_slice == 'foo':
print(my_slice)
似乎这里的新海象运算符会很有用,但是在这里如何使用它并不是很简单
如何检查变量是否等于某个变量,并在子范围内设置为新变量?
例如:
bar = 'foobar'
my_slice = bar[:3]
if my_slice == 'foo':
print(my_slice)
似乎这里的新海象运算符会很有用,但是在这里如何使用它并不是很简单
海象操作员在这里工作得很好,我们只需要准确了解他们是如何工作的。
if (my_slice := bar[3:]) == 'foo':
print(my_slice)
海象运算符将变量设置为某个表达式的输出。除了可以内联使用外,它几乎与等号函数相同。
所以这个表达式:
(my_slice := bar[3:]) == 'foo'
可以归结为(variable = expression) == value
所以因为 的输出my_slice := bar[:3]
等于bar[:3]
,所以上面等价于
bar[3:] == 'foo'
注意:此处的括号是必需的,否则variable
将等于比较操作的输出,即 True 或 False