Invalid Syntax

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
Dominik
User
Beiträge: 2
Registriert: Mittwoch 29. September 2010, 15:14

Hallo,
Ich bin leider nicht sehr erfahren was Python angeht aber ich habe folgendes Programm:

Code: Alles auswählen

#!/usr/bin/python

# (all?) possible keys for movie data?
# see res.get()

# from http://imdbpy.sourceforge.net/?page=docs
from imdb import IMDb

def getPersons(moviename):
    print "fetching actors for movie '" + moviename + "'"
    ia = IMDb()
    s_result = ia.search_movie(moviename)
    if (len(s_result) == 0):
        print "got no movie for '" + moviename + "'"
        return false
    res = s_result[0]
    print res.get('music')
    ia.update(res)
    actors = s_result[0].get('actors')
    ret = {}
    for actor in actors:
        ret[str(actor.getID())] = str(actor)
    print "got " + str(len(actors)) + " actors"
    return ret

def intersect(a, b):
     return list(set(a) & set(b))

def compareMovies(movieNames):
    movieActors = {}
    for movieName in movieNames:
        movieActors[movieName] = getPersons(movieName)
    i = 0
    for k in movieActors.keys():
        i += 1
        for k2 in movieActors.keys()[i:]:
            actors = intersect(movieActors[k], movieActors[k2])
            print "comparing '" + k + "' to '" + k2 + "' => got " + str(len(actors)) + " hit(s)"
            for actor in actors:
                print movieActors[k][actor]

compareMovies(['Titanic', 'The Untouchables', 'Godzilla', 'The Reader'])
Dieses möchte ich unter Windows Vista aufrufen. Dafür habe ich mir Python 2.6 und Pythonimdb heruntergeladen. Den Code habe Ich in den Editor kopiert und film.py genannt. Wenn mit Python aufrufen will kommt "There´s an error in your Programm: invalid syntax" Leider steht weder welche Zeile noch was er anders haben möchte. Dieser Fehlermeldung kommt sogar wenn ich alles aus der Datei lösche, dh eine leere Datei laufen lasse.
Was könnte ich da machen ?
Vielen Dank schon mal

Domi
Zuletzt geändert von Anonymous am Mittwoch 29. September 2010, 15:29, insgesamt 1-mal geändert.
Grund: Quelltext in Python-Code-Tags gesetzt.
Benutzeravatar
Rebecca
User
Beiträge: 1662
Registriert: Freitag 3. Februar 2006, 12:28
Wohnort: DN, Heimat: HB
Kontaktdaten:

Dominik hat geschrieben:"There´s an error in your Programm: invalid syntax"
Das ist keine Python-Fehlermeldung, also ist die Frage, wie du das Programm aufrufst? Fuehre es doch mal aus der Konsole aus (click). Ausserdem gibt es hier im Forum Python-Tags fuer den Code.
Offizielles Python-Tutorial (Deutsche Version)

Urheberrecht, Datenschutz, Informationsfreiheit: Piratenpartei
BlackJack

Der Quelltext sieht IMHO auch nicht besonders "pythonisch" aus. Da hatte jemand beim Schreiben wohl noch eine andere Programmiersprache im Blut.
Dominik
User
Beiträge: 2
Registriert: Mittwoch 29. September 2010, 15:14

Vielen Dank

Ich habe Python nun, wie in dem FAQ erklärt, in der Konsole ausgeführt und bekomme folgende Meldung:
C:\...\Neuer Ordner>python film.py
File "film.py", line 1
Python 2.6 <r26:66721, Oct 2 2008, 11:35:03> [MSC v.1500 32 bit <Intel>] on win32
SyntaxError: invalid syntax


habe ich vielleicht die falsche Version von Python ? oder soll ich einfach mal alles aus dem Fenster werfen ?

Vielen Dank für die Hilfe

Grüße

domi
BlackJack

@Dominik: Das sieht aus als wenn die `film.py` mit der Zeile ``Python 2.6 <r26:66721, Oct 2 2008, 11:35:03> [MSC v.1500 32 bit <Intel>] on win32`` beginnt -- das ist keine gültige Python-Syntax sondern die Ausgabe vom Interpreter wenn man ihn startet. Wie kommt das da hinein?
Antworten