Supposons que la fonction suivante:façon Pythonic d'utiliser la deuxième condition dans la liste compréhensions
def myfun(my_list, n, par1=''):
if par1 == '':
new_list = [[my_fun2(i,j) for j in range(n)] for i in range(n)]
else:
new_list = [[my_fun2(i,j) for j in range(n)] for i in range(n) if my_fun2(i,n) == par1]
return new_list
Comme vous pouvez le voir, il y a deux scénarios différents selon par1
. Je n'aime pas que la ligne 3 et la ligne 5 soient presque identiques et ne suivent pas le principe DRY (Do not Repeat Yourself). Comment ce code peut-il être amélioré?
Vérifiez ma réponse, je n'ai pas vos fonctions exactes de sorte qu'il est difficile de le tester dans le même environnement, mais je pense qu'il devrait faire l'affaire – dhdavvie
Ce serait bien de comprendre ce que vous essayez réellement de résoudre . – ferdy