Je veux trouver tous les diviseurs d'un nombre en python. Je le fais beaucoup dans JavaScript, C #, Java, mais mon code Python fonctionne uniquement avec Imprimer code> instruction correctement. Mais je ne veux pas imprimer de diviseurs, je veux les affecter à une variable ou les afficher de la fonction d'appel dans Imprimer code>.
4 Réponses :
par exemple les sauver dans une liste
Résultat ajouté à une liste automatiquement à cause des supports après retour code>?
Exactement! Également Liste de retour (x pour x dans la plage (1, numéro + 1) si nombre% x == 0) code> aurait fait la même chose. Vous pouvez stocker la liste pour var (comme ceci nom_var = retour_divisors (11) code>
C'est compris. Merci beaucoup.
Comme cela, votre fonction reviendra sur le premier diviseur possible (donc presque toujours 1). Si vous voulez continuer à rechercher votre première découverte, vous devez le sauvegarder, par exemple. Dans une liste (ou utilisez un générateur, etc.).
def mainFunction(number):
divisors = []
for i in range(1, number+1):
if number % i == 0:
divisors.append(i)
return divisors
Si vous exécutez une instruction code> Retour code> La fonction mettra fin à son exécution immédiatement. Pour résoudre votre code, vous pouvez utiliser @ADEEIS Exemple ou simplement ajouter une liste simple
Un de plus, en utilisant Generator:
def mainFunction(number):
for i in range(1, number+1):
if number % i == 0:
yield i
for divisor in mainFunction(10):
print( divisor )
Vous pouvez les ajouter dans une liste et ensuite renvoyer la liste.
@Enriquebet, merci.