解压缩单值元组的可读约定

Ian*_*non 9 python coding-style tuples

有关解包单值元​​组的一些相关 问题,但我想知道在共享和维护代码的可读性方面是否存在首选方法.当他们涉及像ORM查询这样的长期功能链时,我发现这些是同事之间混淆或误读的根源.

是否有一些类似于pep8指南的约定?如果没有,这是最清晰,最易读的方法吗?

以下是我尝试过的方法,以及我对它们的看法.

两种常见但容易错过的常用方法:

value, = long().chained().expression().that().returns().tuple()

value = long().chained().expression().that().returns().tuple()[0]
Run Code Online (Sandbox Code Playgroud)

函数是显式的,但非标准的:

value = unpack_tuple(long().chained().expression().that().returns().tuple())
Run Code Online (Sandbox Code Playgroud)

也许总是评论最清楚?

# unpack single-value tuple
value, = long().chained().expression().that().returns().tuple()
Run Code Online (Sandbox Code Playgroud)

Man*_*dan 22

如何使用显式括号表示您正在解包元组?

(value, ) = long().chained().expression().that().returns().tuple()
Run Code Online (Sandbox Code Playgroud)

毕竟显式优于隐式.