J'essaie de transmettre une liste comme entrée dans un système de fonctions. Ma fonction ressemble à ceci: qui résout après avoir appelé: p> La réponse est la suivante: p> Clairement, il doit y avoir un moyen plus élégant de le faire pour une longueur arbitraire des arguments. J'essaie ce qui suit: p> qui se termine par: p>
3 Réponses :
Vous n'avez pas appelé la fonction Toutefois, Vous pouvez simplement résumer que vous énumérez et soustrayez l'élément correspondant de autre_betas () code> la manière appropriée depuis que vous avez oublié les supports et transmettre les arguments à la fonction.
A code> dans la boucle FOR. Avec la compréhension de la liste, vous n'avez même pas besoin de la boucle pour la boucle. P>
def tempI(beta):
mySum = gamma + np.sum(a)
return [(1 - a[i]*beta[i])*(mySum - a[i]) for i,_ in enumerate(a)]
Vous pouvez le faire dans une seule fonction comme suit:
def g(beta,a): n = len(a) summation = [beta[i] - (1 - a[i] * beta[i]) * (gamma + np.sum([beta[j] for j in range(n) if not j==i])) for i in range(n)] return tuple(summation)
Merci. Je suis nouveau à Python - évidemment et ces commentaires sont très utiles. Maintenant, de la réponse de Jeanggi90, je reçois [-6,9, -18,9, -14,9, -33,0, -10,3] et avec la réponse de Vasilis G.: [7.049, 12.26,10.416, 21.017, 8.43222] qui est probablement En raison de la définition de la fonction ..
Et je crois fermement que la véritable sortie doit être: [0,46, 0,30, 0,35, 0,19, 0,41]
@Quantumjazz Je pense que c'était un support égaré qui a changé l'ordre des opérations mathématiques. J'ai édité ma réponse si vous voulez jeter un coup d'oeil.
C'est génial jusqu'à présent. Peut-il être fait de travailler pour des listes arbitraires avec une liste de réussite juste un [...]?
Ça a l'air encore plus maigre. Génial!
@Quantumjazz C'est bon à savoir. N'hésitez pas à upérer ou à l'accepter comme une réponse si cela vous a aidé.
En réalité, les deux codes fonctionnent: et p> après avoir appelé la fonction avec: p> Nous avons: P> array([0.46713148, 0.30731229, 0.3502582 , 0.1932526 , 0.41133453])