exec mit maskierten strings

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Kathrin
User
Beiträge: 43
Registriert: Dienstag 6. Dezember 2005, 15:11

exec mit maskierten strings

Beitragvon Kathrin » Donnerstag 9. Februar 2006, 15:29

Hallo!

Ich muss meinen string.replace mit in einem exec aufrufen.
Sieht folgendermaßen aus (has es ein bisschen vereinfacht, darum ist exec hier unnötig):

Code: Alles auswählen

i = 1
var1 = "Help me!\n"

exec('var%d = var%d.string.replace%s' % (i, i, '("\n", "")'))

Ich hab hier irgendeinen Syntax-Fehler eingebaut, bekomm nämlich folgende Fehlermeldung: SyntaxError: EOL while scanning single-quoted string
Hab schon versucht, die "s zu maskieren, kriegs aber nicht so ganz hin.

Kann mir jemand helfen, wie ich es richtig aufrufen muss?

Danke, Kathrin!
Benutzeravatar
jens
Moderator
Beiträge: 8458
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Re: exec mit maskierten strings

Beitragvon jens » Donnerstag 9. Februar 2006, 15:33

Kathrin hat geschrieben:SyntaxError: EOL while scanning single-quoted string

Ist evtl. eine Klammer nicht geschlossen?

CMS in Python: http://www.pylucid.org
GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Kathrin
User
Beiträge: 43
Registriert: Dienstag 6. Dezember 2005, 15:11

Beitragvon Kathrin » Donnerstag 9. Februar 2006, 15:37

doch, sind eigentlich alle Klammern richtig gesetzt und verschlossen.
Hab den Code genauso ausprobiert, wie oben ... klappt nicht.
hab nen Teil von der Fehlermeldung vergessen.

var1 = var1.string.replace("
^
SyntaxError: EOL while scanning single-quoted string
Benutzeravatar
jens
Moderator
Beiträge: 8458
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Beitragvon jens » Donnerstag 9. Februar 2006, 15:46

\n muß escaped werden und ein "string" ist zuviel... Hättest du drauf kommen können, wenn du das ganze mal ein bischen entpopelst:

Code: Alles auswählen

i = 1
var1 = "Help me!\n"

print var1

s = 'var%d = var%d.replace%s' % (i, i, '("\\n", "")')

print s

exec(s)

print var1

:lol:

CMS in Python: http://www.pylucid.org
GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Kathrin
User
Beiträge: 43
Registriert: Dienstag 6. Dezember 2005, 15:11

Beitragvon Kathrin » Donnerstag 9. Februar 2006, 16:14

Oh mann, weiß garnicht, wie ich auf das string.replace gekommen bin :?:

Jetzt klappts *juhuu*
Danke für die schnelle Hilfe!

Wer ist online?

Mitglieder in diesem Forum: Bing [Bot], Google [Bot]