Deplacer une valeur contenue dans une liste

Résolu
dan1ye Messages postés 7 Date d'inscription   Statut Membre Dernière intervention   -  
jisisv Messages postés 3645 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour, je m'entrainne à utiliser des listes avec python et en ce moment j'ai ecrit une portion de code qui ne fonctionne pas entierement, pouvez vous m'aider à le débugger s'il vous plait?

#! /usr/bin/env python
#-*- coding: latin-1 -*-

"""
Objectif : deplacer la valeur contenue dans
le tabeau d une certaine position a une autre
tant de la gauche vers la droite que de la droite
vers la gauche 
p= postion de la valeur
ind=indice de la valeur
l[ind]=valeur à deplacer dans l[]
"""

l=[2,0,0,0,0,0,0,0,0] #liste de depart
print l
p =(0) # position de depart dans cet exemple

for i in range (len(l)):
	ind=p
	if i <= len(l):
		ind+=1
		l[ind]=l[ind-1]
		l[ind-1]=0
		print l,i
	p=ind
	else: 
		ind-=1
		l[ind]=l[ind+1]
		l[ind+1]=0
	print l,i



le else ne marche pas je ne sais pas pourquoi
A voir également:

3 réponses

JulienJust Messages postés 149 Date d'inscription   Statut Membre Dernière intervention   18
 
Bonjour,

for i in range (len(l)): signifie que ton i prendra valeur dans l'intervalle [0; len(l)-1]. Donc à aucun moment ton i ne se retrouvera supérieur à len(l).

Voilà pourquoi ton else n'est pas vérifié.

Cdlt
0