Existe algum estilo de codificação recomendado / geralmente aceito para lidar com situações em que uma função retorna uma tupla de valores, mas apenas um desses valores é usado posteriormente (observe que isso se destina principalmente a funções de biblioteca que não posso alterar - escrevendo um wrapper a ligação provavelmente é um pouco exagerada ...)? Em vez de fazer
a, b, c = foo()
e, em seguida, apenas não usando b
e c
, qual das seguintes variantes deve ser preferida (ou existe outra?):
Variante 1 (sublinhado)
a, _, _ = foo()
(que é muito claro e simples, mas pode colidir com o _ = gettext.gettext
usado em muitos aplicativos que usam tradução)
Variante 2 (nome fictício)
a, unused, unused = foo()
(acho que não muito atraente, o mesmo vale para outros nomes como dummy
)
Variante 3 (índice)
a = foo()[0]
(para mim os ()[0]
olhares não pitônicos…)
a, b = foo()[0:2]
funcionaria? Se sim: sim, ele faz :) #
a, *_ = foo()
jogará fora todos os valores, exceto o primeiro.