Seite 1 von 1

Was ist falsch im Code?

Verfasst: Samstag 16. Dezember 2006, 02:31
von saddyam
der Code ist aus dem deutschen Plone-Buch. Nur die meisten Listing laufen eben nicht (mehr)??

Fehlermeldung in IDLE "invalide syntax" Zeile 7 " source_file_name".


Code: Alles auswählen

def create_generator(source_file_name=None, generator_name=None):
    """ Make a generator from the given information
    about the objekt, such as its source and type """
    if generator_name:
        return LanguageInfo.find_generator_by_name(generator_name)()
    else:
        If source_file_name:
            h = LanguageInfo.guess_language_for_file(source_file_name)
            return h.get_default_html_generator()()
        else:
            raise ValueError, "unknow file type, cannot create lexer"
mich macht das Buch noch wahnsinnig. Wie kann man etwas nachvollziehen, wenn die Texte und Scripts nicht mehr stimmen.

Verfasst: Samstag 16. Dezember 2006, 07:34
von helmut
Hallo saddyam,
schreib das if in der 7. Zeile mit kleinem i, dann ist der Syntyxfehler behoben.
Gruss helmut

Re: Was ist falsch im Code?

Verfasst: Samstag 16. Dezember 2006, 09:27
von gerold
saddyam hat geschrieben:der Code ist aus dem deutschen Plone-Buch. Nur die meisten Listing laufen eben nicht (mehr)??
Hi saddyam!

Willkommen im Python-Forum!

Vergiss bitte nicht (zumindest beim nächsten Mal), die Import-Zeilen mit anzugeben. Sonst wirkt es eher aus dem Zusammenhang gerissen.

Code: Alles auswählen

from SilverCity import LanguageInfo
from StringIO import StringIO
mfg
Gerold
:-)

PS: Die meisten bzw. alle Listings, die ich vom Plone-Buch ausprobiert hatte, funktionierten auch. :wink:

Verfasst: Samstag 16. Dezember 2006, 10:42
von BlackJack
Das mit dem ``If`` etwas nicht stimmt, sieht man eigentlich auch ganz gut am fehlenden Syntax-Highlighting.

Verfasst: Samstag 16. Dezember 2006, 18:59
von saddyam
Ich saß wohl doch schon zu lange vor der Kiste. Jetzt seh ichs auch.
Lern gerade auf dem harten Weg Plone/Zope/Python seit 3 Wochen.

Danke!


-------------
Plone Buch. Dann darf ich mich melden, wenns wieder nicht klappt?