python - 如何在 Python 中的 IF 语句中从多个返回值中检查变量之一的值
问题描述
有谁知道,如何在单个 IF 语句中从多个返回值函数中检查变量 a == 0 的值,如下所示,
if (a, b, c = some_function()) == 0: #currently it is wrong
...
...
else:
...
...
def some_function():
return 0, 123, "hello"
解决方案
首先将返回值解包到变量中,然后检查变量的值。
您可以_
用作变量名来指示该值未使用。
a, _, _ = some_function()
if a == 0:
# ...
或者,如果您以后根本不需要访问任何返回值,则可以使用索引:
if some_function()[0] == 0:
# ...
但这不太可读,因为您无法为返回值命名以记录它们的含义。
使用"walrus operator" 很诱人:=
,但它不支持可迭代解包(在第一个示例中使用)。
推荐阅读
- snowflake-cloud-data-platform - 将带有 nextval 的新列添加到现有的 SNOWFLAKE 数据库表
- r - 为使用 ggplot2 生成的图创建下拉菜单
- html - 如何根据情况在 div 中选择 li?
- python - ElementNotInteractableException 错误信息
- ios - 谁处理 iOS 中的通知?- 真正的 React Native
- excel - 复制并粘贴到下面的所有空单元格在下一个非空单元格处重复
- powershell - 仅运行选定的命令/行
- android - Android Studio 无法解析 MapView 类
- go - 如何在 Go 中导入和构建一组本地模块
- javascript - 如何在 JS 中“重置”整个脚本?