Une base m'échappe [Résolu]

Encore moi !
Ca vous prendra une minute, et ensoleillera ma journée !

je ne saisis pas bien la différence entre :

a='coucou\nbeuh’
qui, quand je tape print(a) me donne
coucou
beuh

et :

a=input()
je rentre ensuite coucou\nbeuh
et quand je tape print(a) ça me donne
coucou\nbeuh

c’est débile, un truc m’échappe ! (vous pouvez m’insulter, évidemment…)
dans le premier cas il semblerait que python considère ma string comme une string (…)
alors que dans la deuxième il analyse ce que j’entre et le met ensuite dans une string (?)
enfin, ce que je viens d’écrire vous montre à quel point je suis perdue.

need help ! :unsure: merci

ton input() échappe automatiquement les \n. Si l’input est multiligne (ce qui n’est en général pas le cas), tu devrais saisir un véritable caractère retour chariot dans la saisie…

[quote=“PERECil, post:2, topic: 52747”]
ton input() échappe automatiquement les \n. [/quote]
Je ne saisis pas bien le sens de ta phrase.
Peux-tu me la réexpliquer s’il te plait ?

En gros, ton texte après la méthode input() est ‹ coucou\nbeuh › .
Vu que \n, \r, etc… sont des moyens d’écrire un saut de ligne, si tu veux juste écrire '', tu dois en fait écrire ‹ \ › pour éviter qu’il prenne en compte la lettre après '' .

Le monsieur il dit que la fonction input() de Python ajoute automagiquement un caractère d’échappement devant ton \n pour ne pas que python l�??interprète (ce qui est plutôt bon signe, ça veut dire que tes utilisateurs ne pourront pas inclure de caractères spéciaux dans leurs entrées pour faire planter ta jolie application). C’est plus clair ? :slight_smile:

Ca va pas marcher ca, les \ sont aussi échappés ;). Ca donnerait \\.

plus clair c’est, répondit la madame.
c’est le terme d’échappement qui reste troublant :huh:

L’échappement (‘escape’), c’est pour dire que si on fait:
a = 'essai\ntralala’
on a un saut de ligne, mais parfois, on veut que ça affiche \n, pas que ça saute la ligne.

Donc on fait:
a= 'essai\ntralala’
pour dire que ‘\’ devient ‘’ dès qu’on veut afficher le texte, et ‘n’ est traité comme un ‘n’, pas comme un ‘\n’

Là, on a échappé le ‘’.

Ou sinon: http://fr.wikipedia.org/wiki/Caractère_d'échappement

Je crois que tout est clair, merci !
:kiss:

A la prochaine question bêêête…