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> dansexpression code>, il renvoie donc par défautAucun code>.La fonction
défression code> ne renvoie pas la valeur deexp code>.