Chaine de caractère python

Fermé
miboulish - 8 déc. 2011 à 23:00
heyquem Messages postés 759 Date d'inscription mercredi 17 juin 2009 Statut Membre Dernière intervention 29 décembre 2013 - 10 déc. 2011 à 00:52
Bonjour,
et déjà merci de venir voir mon problème ! :)
le voila:

j'ai disons un chaine de caractère par exemple:
a='miaou dis le chat'

et j'ai besoin de remplacer le s par un t pour que a devienne 'miaou dit le chat'
j'ai testé le:
a[8]='t'
mais ca marche pas.... comment faire ??

(evidement mon "vrai pbm" est plus compliqué l'important est qu'on m'explique comment changer la lettre d'une chaine de caractère en ne sachant que sa position)
le pbm un peu plus juste:
j'ai
cadre=['+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+\n', '| | | | | | |\n', '+--+ + + + + + +--+--+ + +--+--+ + +\n', '| | | | | | | | | | |\n', '+ + + +--+--+--+--+ + + +--+ + +--+ +\n', '| | | | | | | |\n', '+ +--+ +--+--+ +--+--+ +--+ +--+--+ + +\n', '| | | | | | | |\n', '+ +--+ +--+ + + +--+--+--+ + +--+--+ +\n', '| | | | | | | | |\n', '+--+ +--+ +--+ +--+ + +--+--+ + +--+--+\n', '| | | | | | | |\n', '+ +--+--+--+ +--+ +--+--+ +--+ +--+--+ +\n', '| | | | | | |\n', '+ +--+--+--+--+--+--+--+--+--+ + + + +--+\n', '| | | | | |\n', '+ + +--+--+--+--+ + +--+--+--+--+ +--+ +\n', '| | | | | | | | |\n', '+ + +--+ +--+ + + +--+ +--+ +--+--+ +\n', '| | | | |\n', '+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+\n']
et j'aimerai changer l'un des premier | d'une seule des chaines de caratères choisie de facon aléatoire
engros remplacer
c[2*random.randint(0,9)+1][0] par ' '


A voir également:

2 réponses

j'ai trouvé au final c'est tout bete XD

r=2*random.randint(0,9)+1
cadre[r]=cadre[r][1:]
cadre[r]=' ' + cadre[r]
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 842
9 déc. 2011 à 12:47
Bonjour,
Tu peux faire a=a.replace('s','t')
Cela, remplacera tous les 's' par des 't'.

Cdlt,
0
heyquem Messages postés 759 Date d'inscription mercredi 17 juin 2009 Statut Membre Dernière intervention 29 décembre 2013 131
9 déc. 2011 à 16:05
en quel langage ?
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 842
9 déc. 2011 à 16:43
en python comme indiqué dans le titre. ;)
0
heyquem Messages postés 759 Date d'inscription mercredi 17 juin 2009 Statut Membre Dernière intervention 29 décembre 2013 131
9 déc. 2011 à 17:03
gagagga
ragagaga
agagaga aga aga.....

pfffff..... !


:(
0
heyquem Messages postés 759 Date d'inscription mercredi 17 juin 2009 Statut Membre Dernière intervention 29 décembre 2013 131
Modifié par heyquem le 9/12/2011 à 19:38
Quel est le rapport entre
- remplacer le 's' à la position 7 dans la chaîne 'miaou dis le chat'
et
- enlever un caractère '|' d'une chaîne '|||||\n' , ce qui ne nécessite pas de tenir compte de la position du '|' en question puisqu'il n'y a que ça dans la chaîne hormis le dernier caractère
???


Le second objectif peut être atteint en remplaçant effectivement cadre[pos] par cadre[pos][1:]

Soit dit en passant, ce n'est pas la peine d'additionner cadre[pos][1:] à une chaîne vide '', ça ne sert strictement à rien.


Pour le premier objectif, je peux proposer une méthode mais je n'ai pas l'impression que tui en aies vraiment besoin maintenant.
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 842
9 déc. 2011 à 22:27
Soit dit en passant, ce n'est pas la peine d'additionner cadre[pos][1:] à une chaîne vide '', ça ne sert strictement à rien.
' ' ce n'est pas une chaîne vide mais une espace. A mon avis, il voulait simplement mettre une espace devant sa chaîne.
0
heyquem Messages postés 759 Date d'inscription mercredi 17 juin 2009 Statut Membre Dernière intervention 29 décembre 2013 131
10 déc. 2011 à 00:52
mon dieu que je suis bête....
merci fiddy
0