Peut-on faire : if not [pos[v]==posp[v] for v in range(0,2)]:
Résolu
Lecodeurhtmlcss
Messages postés
79
Statut
Membre
-
Lecodeurhtmlcss Messages postés 79 Statut Membre -
Lecodeurhtmlcss Messages postés 79 Statut Membre -
Bonjour ! (Ou bonsoir, je suis open ;D)
Est-il possible d'écrire en python
La solution de rattrapage serait longue et assez complexe pour pas grand-chose :
Qui est fastidieux...
Merci beaucoup pour vos réponses !
Est-il possible d'écrire en python
if not [pos[v]==posp[v] for v in range(0,2)]:? Je pars sur un présupposé négatif car ça n'a pas l'air de fonctionner pour moi. L'idée est de faire quelque-chose si pos n'est égal à posp pour aucuns de leurs indices communs.
La solution de rattrapage serait longue et assez complexe pour pas grand-chose :
Termine=0
Compteur=0
while Termine==0:
if pos[Compteur] == posp[Compteur]:
Termine=2
Compteur+=1
if Compteur==3:
Termine=1
if Termine==1:
(suite du code)
Qui est fastidieux...
Merci beaucoup pour vos réponses !
2 réponses
Bonjour,
zip + for ... else conviendrait bien je pense.
zip + for ... else conviendrait bien je pense.
pos, posp = [0, 1, 2], [1, 2, 3]
for a, b in zip(pos, posp):
if a == b:
print('Valeur commune !')
break
else: # /!\ else du for et non du if
print('Aucune valeur commune entre les deux listes !')
Bonjour,
Et pourquoi pas
Et pourquoi pas
for v in range(0,2): if not pos[v]==posp[v] :
Bonjour et merci jee pee, je n'ai pas explicité l'idée sous-jacente à ma question... De fait c'est (si ce n'est pas
pos[v]==posp[v]dans aucun des v) que je veux faire la suite de mon code (qui sinon contiendrait une division par 0) ! C'est pour ça que je voulais rétrécir cet argument en une ligne :
if not [toutlebazar]Mais merci de la proposition qui, vu mon niveau, n'est pas irrationelle...
Mais pourquoi a et b valent et , au lieu du tuple [0,1] et du tuple [0,1] ? a et b pourraient donc se "partager" le tuple alors qu'ils parcourent une liste ? (Si oui c'est sacrément bien fait...)