Bonsoir messieurs,

Voilà quelques mois que je n'ai pas touché à Python, je m'y remets, et je suis en train de m'embrouiller avec un problème de typage...

Pourriez-vous m'indiquer mon erreur ?

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
from numpy import std
 
hs_histo_2452 = [24964.37, 24710.6, 24500.61, 24700.3, 24222.58, 24027.18, 23693.02, 23214.46, 23637.39, 23605.71, 23524.02, 22896.14, 23023.86, 23054.68, 22877.25, 23166.22, 23007.99, 23249.8]
 
# calcul des espérances
 
e_hs_2452 = []
e = 0.
i = 1
 
for i in hs_histo_2452:
    e = hs_histo_2452[i]-hs_histo_2452[i-1]
    e_hs_2452 = e_hs_2452.append(e)
    i+=1
 
# calcul de la moyenne
 
somme = 0.
mu = 0.
j = 0
 
for j in e_hs_2452:
    somme = somme + e_hs_2452[j]
    j+=1
 
mu = somme / j 
 
print("mu = ", mu)
 
# calcul vol histo
 
# calcul des perfs
 
perf_hs_2452 = []
perf_int = 0.
perf = 0.
k = 1
vol_histo = 0.
 
for k in hs_histo_2452:
    perf_int = hs_histo_2452[k]-hs_histo_2452[k-1]
    perf = perf_int/hs_histo_2452[k-1]
    perf_hs_2452 = perf_hs_2452.append(perf)
    k+=1
 
vol_histo = numpy.std(perf_hs_2452)
 
print("sigma = ", vol_histo)
Je comprends pas parce que si je fais :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
e = float(hs_histo_2452[i])-float(hs_histo_2452[i-1])
Ça ne fonctionne pas non plus.

De plus, j'ai voulu marquer le typage en float en mettant par exemple

Alors que pour moi Python est censé comprendre que 24700.3, par exemple, est un float.