Convenio legible para desempacar tuple de valor único

Hay algunas preguntas relacionadas sobre el desempaquetado de tuplas de valor único, pero me gustaría saber si existe un método preferido en términos de legibilidad para compartir y mantener el código. Encuentro que esto es una fuente de confusión o mala lectura entre colegas cuando involucran una larga cadena de funciones, como una consulta ORM.

¿Hay alguna convención para esto similar a las directrices pep8 ? Si no, ¿cuál es la forma más clara y legible de hacerlo?

A continuación se muestran las formas en que he intentado, y mis pensamientos sobre ellos.

Dos métodos comunes que son ordenados pero fáciles de perder:

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

Una función sería explícita, pero no estándar:

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

¿Quizás siempre sería más claro comentar?

 # unpack single-value tuple value, = long().chained().expression().that().returns().tuple() 

¿Qué tal si usa paréntesis explícitos para indicar que está desempaquetando una tupla?

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

Después de todo lo explícito es mejor que lo implícito .