Bonjour,
Je viens poster un message ici car j'aimerai trouver de l'aide. En effet, je suis en pleine révision de programmation scientifique, sur Python.
Je cherche à intégrer entre les caractères d'une liste le signe "*". Problème qui semble assez classique puisque j'ai trouvé plusieurs autres forums qui répondaient à cette question, mais je n'ai pas du tout compris quelle était la logique derrière, la solution étant directement mise. Ce que je cherche à faire c'est transformer par exemple : "azerty" en "a*z*e*r*t*y".
Je souhaiterai travailler avec la boucle while, simplement parce que c'est celle que je comprend le mieux.
Voilà ce que j'ai fait, en sachant que c'est la version actuelle, j'ai tenté avec le for ... in, mais je ne comprend pas du tout la logique :
def afficheavecEtoile(ch):
i=0
ch=[ch]
while i<len(ch):
ch=ch[i]+"*"
i=i+1
print ch
return ch
Et quand je le fais fonctionner avec l'exemple que j'ai donné plus haut je trouve le résultat suivant
z*
'z*'
(Les deux)
Je pense que le problème peut venir du fait que, les retraits, alinéas et alignements ne sont pas bons, il manque quelque chose qui fait poursuivre la boucle, mais pourtant ma valeur de i évolue bien de 1 en 1, et la boucle while le prend bien en compte. Le problème doit certainement venir du print ch, ou bien quelque chose qui manque, ou bien encore qui est mal fait dans la boucle while, mauvaise condition ou autre.
Bref, j'ai vraiment du mal à comprendre la logique ici, j'ai réussi à comprendre ce que j'avais fait mais je ne parviens pas à surmonter/identifier l'erreur ou plutôt les erreurs que j'ai du faire ici.
Merci de m'avoir lu !
Chalael
-----