domanda molto semplice:Stile Python preferito (o qualsiasi lingua, in realtà): se si desidera utilizzare diversamente quando restituisce?
In particolare in Python (dal Python ha in realtà linee guida dello stile "fortemente raccomandato" specificati in PEP 8, ma in realtà questo vale per qualsiasi lingua), devono una funzione con una clausola if
che restituisce sempre avere l'alternativa codice in una clausola else
o no? In altre parole, func_style_one()
e func_style_two()
nel seguente pezzo di codice sono (ovviamente) esattamente equivalente:
def func_style_one():
if some_conditional_function():
do_something()
return something()
else:
do_something_else()
return something_else()
def func_style_two():
if some_conditional_function():
do_something()
return something()
do_something_else()
return something_else()
Ovviamente, lo stile migliore e più leggibile dipende dalla situazione, e opinioni varia notevolmente sul quale è meglio, ma sto chiedendo quale sia specificamente preferito dalla core community Python. (Ad esempio, che viene utilizzato più spesso nella libreria standard, a parità di altre condizioni?)
Io tendo a scegliere il secondo –
Penso che il secondo sia più sicuro. Meno incline a cambiare un altro a un elif durante un refactoring e a creare accidentalmente un percorso di codice senza alcun valore di ritorno. –
Se restituisce tutto l'equivalente del resto, quindi il primo. Se il resto fa calcoli aggiuntivi - il secondo. –