zum Beispiel:python warum gibt max (max (float_2d_array)) falsche antwort?
a = [[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
[0.0, 0.0, 1.2852976787772832, 0.00092, 0.0, 0.0, 0.0, 0.0, 0.0],
[0.0, 0.0, 0.0, 6.409872844109646, 0.17506688391255013, 0.0, 0.0, 0.0, 0.0],
[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]]
print max(max(a))
print max(a)
Das Ergebnis ist:
1,28529767878
[0.0, 0.0, 1,2852976787772832, 0,00092, 0.0, 0.0, 0.0, 0.0, 0.0]
Dies ist eindeutig falsch, der Maximalwert sollte 6.409872844109646 sein.
b = []
for i in a:
b.extend(i)
print max(b)
6,40987284411
Dies ist Python 2.7, CPython.
Vielen Dank.
warum erwarten Sie 6,409872844109646? .... 1,2852976787772832 sieht aus wie der max mir – depperm
Sie die richtige Antwort mit numpy bekommen können: 'Druck numpy.max (a)' – Nuageux
Ihre Erwartung von 'max (a)' ist nicht richtig. Es wird dir nicht die Liste geben, die die maximale Anzahl hat. – yeniv