Je souhaite pouvoir écrire dans un fichier la ligne suivante:
%string
Evidemment, si j'écris:
fp = open('test.txt','w')
fp.write('%string')
J'obtiens une erreur, %s étant utilisé pour le formatage des chaînes de
caractères.
Je suis donc obligé de passer par une étape intermédiaire pour arriver à
mes fins:
fp = open('test.txt','w')
fp.write('%')
fp.write('string')
Vous conviendrez que ce n'est guère élégant. Je cherche donc un moyen
d'arriver au but en n'utilisant qu'un appel à la méthode 'write'. La
solution doit sans doute être triviale, mais je cale complètement. Ce
serait donc avec plaisir que j'accueillerais vos suggestions.
Je souhaite pouvoir écrire dans un fichier la ligne suivante:
%string
Evidemment, si j'écris: fp = open('test.txt','w') fp.write('%string')
J'obtiens une erreur, %s étant utilisé pour le formatage des chaînes de caractères.
Simplement mettre % ne suffit pas ? C'est ce que j'aurais essayé.
Laurent
remi_inconnu
On 13 déc, 16:34, Thomas Paviot wrote:
Bonjour à tous,
Je souhaite pouvoir écrire dans un fichier la ligne suivante:
%string
Evidemment, si j'écris: fp = open('test.txt','w') fp.write('%string')
J'obtiens une erreur, %s étant utilisé pour le formatage des chaîne s de caractères.
Je suis donc obligé de passer par une étape intermédiaire pour arri ver à mes fins: fp = open('test.txt','w') fp.write('%') fp.write('string')
Vous conviendrez que ce n'est guère élégant. Je cherche donc un moy en d'arriver au but en n'utilisant qu'un appel à la méthode 'write'. La solution doit sans doute être triviale, mais je cale complètement. Ce serait donc avec plaisir que j'accueillerais vos suggestions.
Thomas Paviot
Bizarre je viens de faire le test et je n'obtient aucune erreur, quel version de python utilise tu, moi j'utilise la 2.5.2
On 13 déc, 16:34, Thomas Paviot <thomas.pav...@free.fr> wrote:
Bonjour à tous,
Je souhaite pouvoir écrire dans un fichier la ligne suivante:
%string
Evidemment, si j'écris:
fp = open('test.txt','w')
fp.write('%string')
J'obtiens une erreur, %s étant utilisé pour le formatage des chaîne s de
caractères.
Je suis donc obligé de passer par une étape intermédiaire pour arri ver à
mes fins:
fp = open('test.txt','w')
fp.write('%')
fp.write('string')
Vous conviendrez que ce n'est guère élégant. Je cherche donc un moy en
d'arriver au but en n'utilisant qu'un appel à la méthode 'write'. La
solution doit sans doute être triviale, mais je cale complètement. Ce
serait donc avec plaisir que j'accueillerais vos suggestions.
Thomas Paviot
Bizarre je viens de faire le test et je n'obtient aucune erreur, quel
version de python utilise tu, moi j'utilise la 2.5.2
Je souhaite pouvoir écrire dans un fichier la ligne suivante:
%string
Evidemment, si j'écris: fp = open('test.txt','w') fp.write('%string')
J'obtiens une erreur, %s étant utilisé pour le formatage des chaîne s de caractères.
Je suis donc obligé de passer par une étape intermédiaire pour arri ver à mes fins: fp = open('test.txt','w') fp.write('%') fp.write('string')
Vous conviendrez que ce n'est guère élégant. Je cherche donc un moy en d'arriver au but en n'utilisant qu'un appel à la méthode 'write'. La solution doit sans doute être triviale, mais je cale complètement. Ce serait donc avec plaisir que j'accueillerais vos suggestions.
Thomas Paviot
Bizarre je viens de faire le test et je n'obtient aucune erreur, quel version de python utilise tu, moi j'utilise la 2.5.2
Bruno Desthuilliers
Thomas Paviot a écrit :
Bonjour à tous,
Je souhaite pouvoir écrire dans un fichier la ligne suivante:
%string
Evidemment, si j'écris: fp = open('test.txt','w') fp.write('%string')
J'obtiens une erreur, %s étant utilisé pour le formatage des chaînes de caractères.
~ $ python Python 2.5.1 (r251:54863, Apr 6 2008, 17:20:35) [GCC 4.1.2 (Gentoo 4.1.2 p1.0.2)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> f = open("yadda.txt") Traceback (most recent call last): File "<stdin>", line 1, in <module> IOError: [Errno 2] No such file or directory: 'yadda.txt' >>> f = open("yadda.txt", 'w') >>> f.write("%string") >>> f.close() >>> ~ $ cat yadda.txt %string
Tu disais ?
Mais bon, si ton problème est d'échapper le '%' dans une chaine, la réponse est dans la doc : utilise "%%"
Thomas Paviot a écrit :
Bonjour à tous,
Je souhaite pouvoir écrire dans un fichier la ligne suivante:
%string
Evidemment, si j'écris:
fp = open('test.txt','w')
fp.write('%string')
J'obtiens une erreur, %s étant utilisé pour le formatage des chaînes de
caractères.
bruno@bibi ~ $ python
Python 2.5.1 (r251:54863, Apr 6 2008, 17:20:35)
[GCC 4.1.2 (Gentoo 4.1.2 p1.0.2)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> f = open("yadda.txt")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IOError: [Errno 2] No such file or directory: 'yadda.txt'
>>> f = open("yadda.txt", 'w')
>>> f.write("%string")
>>> f.close()
>>>
bruno@bibi ~ $ cat yadda.txt
%string
Tu disais ?
Mais bon, si ton problème est d'échapper le '%' dans une chaine, la
réponse est dans la doc : utilise "%%"
Je souhaite pouvoir écrire dans un fichier la ligne suivante:
%string
Evidemment, si j'écris: fp = open('test.txt','w') fp.write('%string')
J'obtiens une erreur, %s étant utilisé pour le formatage des chaînes de caractères.
~ $ python Python 2.5.1 (r251:54863, Apr 6 2008, 17:20:35) [GCC 4.1.2 (Gentoo 4.1.2 p1.0.2)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> f = open("yadda.txt") Traceback (most recent call last): File "<stdin>", line 1, in <module> IOError: [Errno 2] No such file or directory: 'yadda.txt' >>> f = open("yadda.txt", 'w') >>> f.write("%string") >>> f.close() >>> ~ $ cat yadda.txt %string
Tu disais ?
Mais bon, si ton problème est d'échapper le '%' dans une chaine, la réponse est dans la doc : utilise "%%"
Christophe
Thomas Paviot a écrit :
Bonjour à tous,
Je souhaite pouvoir écrire dans un fichier la ligne suivante:
%string
Evidemment, si j'écris: fp = open('test.txt','w') fp.write('%string')
J'obtiens une erreur, %s étant utilisé pour le formatage des chaînes de caractères.
Je suis donc obligé de passer par une étape intermédiaire pour arriver à mes fins: fp = open('test.txt','w') fp.write('%') fp.write('string')
Vous conviendrez que ce n'est guère élégant. Je cherche donc un moyen d'arriver au but en n'utilisant qu'un appel à la méthode 'write'. La solution doit sans doute être triviale, mais je cale complètement. Ce serait donc avec plaisir que j'accueillerais vos suggestions.
Thomas Paviot
Ce que tu dis est faux, ce code marche parfaitement, par contre, la vrai erreur que tu rencontres dans ton code original que tu as modifié avant de poster ici se corrige en écrivant %% au lieu de % ;)
Thomas Paviot a écrit :
Bonjour à tous,
Je souhaite pouvoir écrire dans un fichier la ligne suivante:
%string
Evidemment, si j'écris:
fp = open('test.txt','w')
fp.write('%string')
J'obtiens une erreur, %s étant utilisé pour le formatage des chaînes de
caractères.
Je suis donc obligé de passer par une étape intermédiaire pour arriver à
mes fins:
fp = open('test.txt','w')
fp.write('%')
fp.write('string')
Vous conviendrez que ce n'est guère élégant. Je cherche donc un moyen
d'arriver au but en n'utilisant qu'un appel à la méthode 'write'. La
solution doit sans doute être triviale, mais je cale complètement. Ce
serait donc avec plaisir que j'accueillerais vos suggestions.
Thomas Paviot
Ce que tu dis est faux, ce code marche parfaitement, par contre, la vrai
erreur que tu rencontres dans ton code original que tu as modifié avant
de poster ici se corrige en écrivant %% au lieu de % ;)
Je souhaite pouvoir écrire dans un fichier la ligne suivante:
%string
Evidemment, si j'écris: fp = open('test.txt','w') fp.write('%string')
J'obtiens une erreur, %s étant utilisé pour le formatage des chaînes de caractères.
Je suis donc obligé de passer par une étape intermédiaire pour arriver à mes fins: fp = open('test.txt','w') fp.write('%') fp.write('string')
Vous conviendrez que ce n'est guère élégant. Je cherche donc un moyen d'arriver au but en n'utilisant qu'un appel à la méthode 'write'. La solution doit sans doute être triviale, mais je cale complètement. Ce serait donc avec plaisir que j'accueillerais vos suggestions.
Thomas Paviot
Ce que tu dis est faux, ce code marche parfaitement, par contre, la vrai erreur que tu rencontres dans ton code original que tu as modifié avant de poster ici se corrige en écrivant %% au lieu de % ;)
Thomas Paviot
Christophe a écrit :
Thomas Paviot a écrit :
Bonjour à tous,
Je souhaite pouvoir écrire dans un fichier la ligne suivante:
%string
Evidemment, si j'écris: fp = open('test.txt','w') fp.write('%string')
J'obtiens une erreur, %s étant utilisé pour le formatage des chaînes de caractères.
Je suis donc obligé de passer par une étape intermédiaire pour arriver à mes fins: fp = open('test.txt','w') fp.write('%') fp.write('string')
Vous conviendrez que ce n'est guère élégant. Je cherche donc un moyen d'arriver au but en n'utilisant qu'un appel à la méthode 'write'. La solution doit sans doute être triviale, mais je cale complètement. Ce serait donc avec plaisir que j'accueillerais vos suggestions.
Thomas Paviot
Ce que tu dis est faux, ce code marche parfaitement, par contre, la vrai erreur que tu rencontres dans ton code original que tu as modifié avant de poster ici se corrige en écrivant %% au lieu de % ;)
Effectivement, j'ai tellement simplifié le problème que j'en ai supprimé l'erreur originale. Voici donc l'erreur qui fonctionne (!):
Si je veux écrire dans le fichier "test" %string ma_chaine
alors le code python suivant lève une exception du type TypeError: fp = open('test.txt','w') a = 'ma_chaine' fp.write('%string %s'%a)
La solution préconisée (utilisation de '%%') fonctionne alors parfaitement: fp.write('%%string %s'%a)
Merci pour vos réponses,
Thomas Paviot
Christophe a écrit :
Thomas Paviot a écrit :
Bonjour à tous,
Je souhaite pouvoir écrire dans un fichier la ligne suivante:
%string
Evidemment, si j'écris:
fp = open('test.txt','w')
fp.write('%string')
J'obtiens une erreur, %s étant utilisé pour le formatage des chaînes
de caractères.
Je suis donc obligé de passer par une étape intermédiaire pour arriver
à mes fins:
fp = open('test.txt','w')
fp.write('%')
fp.write('string')
Vous conviendrez que ce n'est guère élégant. Je cherche donc un moyen
d'arriver au but en n'utilisant qu'un appel à la méthode 'write'. La
solution doit sans doute être triviale, mais je cale complètement. Ce
serait donc avec plaisir que j'accueillerais vos suggestions.
Thomas Paviot
Ce que tu dis est faux, ce code marche parfaitement, par contre, la vrai
erreur que tu rencontres dans ton code original que tu as modifié avant
de poster ici se corrige en écrivant %% au lieu de % ;)
Effectivement, j'ai tellement simplifié le problème que j'en ai supprimé
l'erreur originale. Voici donc l'erreur qui fonctionne (!):
Si je veux écrire dans le fichier "test"
%string ma_chaine
alors le code python suivant lève une exception du type TypeError:
fp = open('test.txt','w')
a = 'ma_chaine'
fp.write('%string %s'%a)
La solution préconisée (utilisation de '%%') fonctionne alors parfaitement:
fp.write('%%string %s'%a)
Je souhaite pouvoir écrire dans un fichier la ligne suivante:
%string
Evidemment, si j'écris: fp = open('test.txt','w') fp.write('%string')
J'obtiens une erreur, %s étant utilisé pour le formatage des chaînes de caractères.
Je suis donc obligé de passer par une étape intermédiaire pour arriver à mes fins: fp = open('test.txt','w') fp.write('%') fp.write('string')
Vous conviendrez que ce n'est guère élégant. Je cherche donc un moyen d'arriver au but en n'utilisant qu'un appel à la méthode 'write'. La solution doit sans doute être triviale, mais je cale complètement. Ce serait donc avec plaisir que j'accueillerais vos suggestions.
Thomas Paviot
Ce que tu dis est faux, ce code marche parfaitement, par contre, la vrai erreur que tu rencontres dans ton code original que tu as modifié avant de poster ici se corrige en écrivant %% au lieu de % ;)
Effectivement, j'ai tellement simplifié le problème que j'en ai supprimé l'erreur originale. Voici donc l'erreur qui fonctionne (!):
Si je veux écrire dans le fichier "test" %string ma_chaine
alors le code python suivant lève une exception du type TypeError: fp = open('test.txt','w') a = 'ma_chaine' fp.write('%string %s'%a)
La solution préconisée (utilisation de '%%') fonctionne alors parfaitement: fp.write('%%string %s'%a)