有一些
related
questions
关于解包单值元组,但是我想知道在共享和维护代码的可读性方面是否有一个首选的方法。我发现,当同事们涉及到一个长的函数链(如ORM查询)时,这些问题会导致他们产生混淆或误解。
有没有类似的惯例
pep8
指南?如果不是,哪种方法最清晰,最易读?
下面是我尝试的方法,以及我对它们的想法。
两种常见的方法,整洁但容易遗漏:
value, = long().chained().expression().that().returns().tuple()
value = long().chained().expression().that().returns().tuple()[0]
函数将是显式的,但不是标准的:
value = unpack_tuple(long().chained().expression().that().returns().tuple())
也许评论总是最清楚的?
# unpack single-value tuple
value, = long().chained().expression().that().returns().tuple()