Lorsque vous exécutez le code, avez une erreur comme celle-ci
import initialsys import numpy as np R = np.array([[0.90 , 0.93,0.91 , 0.95], [0.95 , 0.94, 0.93, 0], [0.85 , 0.90 , 0.87 , 0.92], [0.83 , 0.87 , 0.85 , 0 ], [0.94 , 0.93 , 0.95 , 0], [0.99 , 0.98 , 0.97 , 0.96], [0.91 , 0.92 , 0.94 , 0], [0.81 , 0.90 , 0.91 , 0], [0.97 , 0.99 , 0.96 , 0.91], [0.83 , 0.85 , 0.90 , 0], [0.94 , 0.95 , 0.96 , 0], [0.79 , 0.82 , 0.85 , 0.90], [0.98 , 0.99 , 0.97 , 0], [0.85 , 0.92 , 0.95 , 0.99] ]) def expression(r ,possition , char ): exp = 1-r[possition , int(char)] x = initialsys.getx() possition = 0 Total = 1 Total = float(Total) char = "" for row in x : for char in row : if char!= 0 : exp = expression(R , possition , char) Total = Total* exp Total = 1-Total possition = possition + 1
3 Réponses :
Votre fonction Vous devriez l'écrire comme ceci: p> def expression (r, possition, char) code> ne renvoie rien.
Couple de changements.
Retour code> dans l'expression code> li>
-
aléatoire.randint (0, 4) code> doit être aléatoire.randint (0, 3) code> li>
ul> ex: strong> p> xxx pré>
xxx pré> p>
Voir ce lien pour comprendre la notion de Portée code>: pythonspot.com/scopepot.com/a >
@Rakesh j'ai changé 4 à 3 mais indexerror: l'index 4 est hors limites pour l'axe 1 avec une erreur de taille 4 a toujours
J'ai changé 4 à 3 mais indexerror: l'index 4 est hors limites pour l'axe 1 avec une erreur de taille 4 a toujours p>
Vous n'avez pas
retour code> dans
expression code>, il renvoie donc par défaut
Aucun code>.
La fonction
défression code> ne renvoie pas la valeur de
exp code>.