Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

mon python me fait un coup de calgon avec les dict ou bien ?

2 réponses
Avatar
fred
Bonjour,

Je ne comprend pas ce qu'il se passe avec l'exemple suivant :

from numpy import array

a = [{'origin': 3.0,
'normal': array([ 0.06359693, -0.21529356, 0.97447633]),
'tensors_visibility_flag': False,
'vmax': 119.0,
'plane': 'xOy',
'umin': 100.0,
'widget_enabled': False,
'umax': 119.0,
'vmin': 100.0,
'texture_enabled': False,
'visibility_flag': True},
{'origin': 112.0,
'normal': array([-0.36578577, 0.91430306, -0.17392725]),
'tensors_visibility_flag': False,
'vmax': 4.0,
'plane': 'xOz',
'umin': 100.0,
'widget_enabled': False,
'umax': 119.0,
'vmin': 0.0,
'texture_enabled': False,
'visibility_flag': True},
{'origin': 112.0,
'normal': array([ 0.9141222 , 0.39358486, -0.09732192]),
'tensors_visibility_flag': False,
'vmax': 4.0,
'plane': 'yOz',
'umin': 100.0,
'widget_enabled': False,
'umax': 119.0,
'vmin': 0.0,
'texture_enabled': False,
'visibility_flag': True}]

b = a[0]
print a.index(b)

b = a[1]
print a.index(b)

b = a[2]
print a.index(b)


Pourriez-vous éclairer ma lanterne ???

Merci d'avance.

--
Fred

2 réponses

Avatar
fred
fred a écrit :

Bonjour,

Je ne comprend pas ce qu'il se passe avec l'exemple suivant :

from numpy import array

a = [{'origin': 3.0,
'normal': array([ 0.06359693, -0.21529356, 0.97447633]),
'tensors_visibility_flag': False,
'vmax': 119.0,
'plane': 'xOy',
'umin': 100.0,
'widget_enabled': False,
'umax': 119.0,
'vmin': 100.0,
'texture_enabled': False,
'visibility_flag': True},
{'origin': 112.0,
'normal': array([-0.36578577, 0.91430306, -0.17392725]),
'tensors_visibility_flag': False,
'vmax': 4.0,
'plane': 'xOz',
'umin': 100.0,
'widget_enabled': False,
'umax': 119.0,
'vmin': 0.0,
'texture_enabled': False,
'visibility_flag': True},
{'origin': 112.0,
'normal': array([ 0.9141222 , 0.39358486, -0.09732192]),
'tensors_visibility_flag': False,
'vmax': 4.0,
'plane': 'yOz',
'umin': 100.0,
'widget_enabled': False,
'umax': 119.0,
'vmin': 0.0,
'texture_enabled': False,
'visibility_flag': True}]

b = a[0]
print a.index(b)

b = a[1]
print a.index(b)

b = a[2]
print a.index(b)


J'obtiens :

0
1
Traceback (most recent call last):
File "./a.py", line 46, in <module>
print a.index(b)
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()

Comme s'il trouvait plus d'une occurrence de a[2] dans a...


Cordialement.

PS : python 2.6.6, debian squeeze.

--
Fred
Avatar
fred
fred a écrit :

Traceback (most recent call last):
File "./a.py", line 46, in <module>
print a.index(b)
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()

Comme s'il trouvait plus d'une occurrence de a[2] dans a...


Hmmm, semblerait que ce soit dû à l'utilisation du array...

Désolé pour le dérangement :-/

--
Fred