python - 使用单个元素解压元组,如果元组为 None,则返回 None

标签 python python-2.7

使用 python 2.7,我有以下代码:

if result != None:
    (data,) = result
    return data

return None

result 变量是从仅返回一个值的 sqlite3 查询返回的。如果查询返回结果,我想解包并返回数据,否则我想返回 None。上面的代码似乎过于冗长而且一点也不像 pythonic。有没有更好的办法?

最佳答案

您可以使用 if else 条件:

return result[0] if result is not None else None

或将其简化为:

return result[0] if result else None

如果您不关心 result 可能是其他的 false-y value例如空元组等。

关于python - 使用单个元素解压元组,如果元组为 None,则返回 None,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12479968/

相关文章:

python - 仅替换屏蔽的 numpy 数组中的未屏蔽值

python - 橙2.7安装 "UnsatisfiableError"

python - 在 Python 中为数千个大表进行外部连接

python - 更改pythonpath的优先级

python - 如何在 Python 中获取指向原始二进制数据的指针?

python - 如何在 Selenium 中使用命令行选项启动 PhantomJS?

python - matplotlib imshow 子图 sharey 打破了 x 限制

python - 寻找一种轻量级解决方案来系统地检测 C 函数的 if 条件

python - 如何在sklearn grid search中使用log loss

python - 为什么我的第二个请求没有在我的 scrapy 蜘蛛的解析方法中被调用