Code im Text - ist dies möglich?

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.
Antworten
Benutzeravatar
michi-monster
User
Beiträge: 48
Registriert: Donnerstag 7. Dezember 2017, 18:30
Kontaktdaten:

Ich will nen HTML Code in komplett klein umschreiben. Jetzt hab ich mit Python folgendes erstellt:

Code: Alles auswählen

gross = "GROSS"
klein = gross.lower()
print(klein)
In der Form funzt es. Wenn ich den Code einfüge bringt er nen Syntax Fehler.
Der Code lautet wie folgt:

Code: Alles auswählen

<SCRIPT charset="utf-8" type="text/javascript" src="//ws-eu.amazon-adsystem.com/widgets/q?ServiceVersion=20070822&MarketPlace=DE&ID=V20070822%2FDE%2Fwwwedvbildung-21%2F8009%2Fd45af645-bc91-426e-92f3-a40d57a7bf74&Operation=GetScriptTemplate"> </SCRIPT> <NOSCRIPT><A rel="nofollow" HREF="//ws-eu.amazon-adsystem.com/widgets/q?ServiceVersion=20070822&MarketPlace=DE&ID=V20070822%2FDE%2Fwwwedvbildung-21%2F8009%2Fd45af645-bc91-426e-92f3-a40d57a7bf74&Operation=NoScript">Amazon.de Widgets</A></NOSCRIPT>
Wie kann ich den langen Code verwenden bzw ändern? Ist es mit der Verwendung von '" \" >>Text<< \" " möglich?
Sirius3
User
Beiträge: 17741
Registriert: Sonntag 21. Oktober 2012, 17:20

@michi-monster: verständliche Fehlerbeschreibung wäre sinnvoll.
Wenn ich Dich richtig verstanden habe, hast Du einen String, den Du in Dein Pythonprogramm einfügen möchtest:
Das

Code: Alles auswählen

gross = "<SCRIPT charset="utf-8" type="text/javascript" src="//ws-eu.amazon-adsystem.com/widgets/q?ServiceVersion=20070822&MarketPlace=DE&ID=V20070822%2FDE%2Fwwwedvbildung-21%2F8009%2Fd45af645-bc91-426e-92f3-a40d57a7bf74&Operation=GetScriptTemplate"> </SCRIPT> <NOSCRIPT><A rel="nofollow" HREF="//ws-eu.amazon-adsystem.com/widgets/q?ServiceVersion=20070822&MarketPlace=DE&ID=V20070822%2FDE%2Fwwwedvbildung-21%2F8009%2Fd45af645-bc91-426e-92f3-a40d57a7bf74&Operation=NoScript">Amazon.de Widgets</A></NOSCRIPT>"
funktioniert nicht, weil der String Anführungszeichen enthält. Python kennt aber noch drei andere Arten von Anführungszeichen ', """ und '''. Eine davon ist fast immer passend. Andrerseits sollte man so langen Text am besten aus einer Datei lesen.
Benutzeravatar
/me
User
Beiträge: 3555
Registriert: Donnerstag 25. Juni 2009, 14:40
Wohnort: Bonn

michi-monster hat geschrieben:In der Form funzt es. Wenn ich den Code einfüge bringt er nen Syntax Fehler.
Mit "Code" meinst du den HTML-Text, oder? Wie sieht denn dein Python-Programm aus wenn du den Text verwendest? Und wie lautet die Fehlermeldung genau?
Benutzeravatar
michi-monster
User
Beiträge: 48
Registriert: Donnerstag 7. Dezember 2017, 18:30
Kontaktdaten:

@me: ja, ich mein den HTML Text
Bei manueller Texteingabe bekomme ich

Code: Alles auswählen

SyntaxError: unexpected character after line continuation character
Bilder unter: http://edv-bildung.de/python-code-in-klein
Sirius3
User
Beiträge: 17741
Registriert: Sonntag 21. Oktober 2012, 17:20

@michi-monster: statt hier irgendwelche Bilderlinks zu posten, solltest Du den Code mit komplettem Fehlertraceback zeigen.
Benutzeravatar
michi-monster
User
Beiträge: 48
Registriert: Donnerstag 7. Dezember 2017, 18:30
Kontaktdaten:

Ist dies hilfreich? Sonst gib mir bitte mal ne Info was genau ich zum Abruf machen soll.

Code: Alles auswählen

fridolin@localhost ~ $ python3
Python 3.5.4 (default, Jan  6 2018, 08:35:33) 
[GCC 6.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> gross = ""\<SCRIPT charset="utf-8" type="text/javascript" src="//ws-eu.amazon-adsystem.com/widgets/q?ServiceVersion=20070822&MarketPlace=DE&ID=V20070822%2FDE%2Fwwwedvbildung-21%2F8009%2Fd45af645-bc91-426e-92f3-a40d57a7bf74&Operation=GetScriptTemplate"> </SCRIPT> <NOSCRIPT><A rel="nofollow" HREF="//ws-eu.amazon-adsystem.com/widgets/q?ServiceVersion=20070822&MarketPlace=DE&ID=V20070822%2FDE%2Fwwwedvbildung-21%2F8009%2Fd45af645-bc91-426e-92f3-a40d57a7bf74&Operation=NoScript">Amazon.de Widgets</A></NOSCRIPT>\""
  File "<stdin>", line 1
    gross = ""\<SCRIPT charset="utf-8" type="text/javascript" src="//ws-eu.amazon-adsystem.com/widgets/q?ServiceVersion=20070822&MarketPlace=DE&ID=V20070822%2FDE%2Fwwwedvbildung-21%2F8009%2Fd45af645-bc91-426e-92f3-a40d57a7bf74&Operation=GetScriptTemplate"> </SCRIPT> <NOSCRIPT><A rel="nofollow" HREF="//ws-eu.amazon-adsystem.com/widgets/q?ServiceVersion=20070822&MarketPlace=DE&ID=V20070822%2FDE%2Fwwwedvbildung-21%2F8009%2Fd45af645-bc91-426e-92f3-a40d57a7bf74&Operation=NoScript">Amazon.de Widgets</A></NOSCRIPT>\""
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   ^
SyntaxError: unexpected character after line continuation character
__deets__
User
Beiträge: 14529
Registriert: Mittwoch 14. Oktober 2015, 14:29

So geht's halt nicht, wie schon beschrieben von anderen hier. Heruntergedummt auf ein simples Beispiel versuchst du

Code: Alles auswählen

name = "text mit " darin"
Damit kommt Python nicht klar, beim zweiten Anfuehrungszeichen ist fuer es Ende, und danach kommt "Muell".

Und genau fuer diese Faelle hat Python triple-quotes vorgesehen:

Code: Alles auswählen

name = """text mit " darin"""
Benutzeravatar
noisefloor
User
Beiträge: 3856
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: WW
Kontaktdaten:

Hallo,

@michi-monster: es hat auch niemand jemand gesagt, dass du zwei " nehmen solltest - das funktioniert nämlich nicht. Sirius3 hat dir doch schon in seiner ersten Antwort gesagt, welche Kombis von Anführungszeichen Python kennt - zwei " sind da nicht genannt...

Gruß, noisefloor
Benutzeravatar
michi-monster
User
Beiträge: 48
Registriert: Donnerstag 7. Dezember 2017, 18:30
Kontaktdaten:

Ich freu mir: Prob ist gelöst :-)
Antworten