Seite 1 von 1

Anfängerskript aus Buch bringt Fehlermeldung

Verfasst: Freitag 27. Februar 2009, 06:10
von pee
Huhu,

ich habe vor kurzem angefangen Python zu lernen. Das ist mein erstes Posting. Ich heiße Peter, nutze Ubuntu 8.10 und komme aus Rheinland-Pfalz. Bisher kann ich PHP, MySQL, XHTML und CSS programmieren. Hoffe das ich hier zusammen mit anderen Nutzern angenehm meine Erfahrungen austauschen kann.

Habe mir »Das Python Praxisbuch« von Farid Hajji zugelegt und bin dabei es durchzuarbeiten. Nachdem ich folgenden Code aus dem Buch abgetippt und mit Python gestartet habe (=
jesper@jesper-desktop:~$ python hello2.py
)
, erhalte ich die Fehlermeldung
File "hello2.py", line 5
,,,
^
SyntaxError: invalid syntax
.

Der Code:

Code: Alles auswählen

#!usr/bin/env python
# hello2.py -- the traditional hello world program, cli version


,,,
This program greets the user and asks him for a name, 
but only if the name has not been specified on the
command line interface as its first argument. Then
it welcome the user with a nice personalized message.

Call this program either as:
	hello2.py "John Doe"
or as 
	hello2.py

,,,


import sys

def say_hello():
	"Say hello to the world!"
	print "Hello, World!"

def ask_user_from_cli():
	"Fetch user name from the command line interface"
	if len(sys.argv) > 1:
		return sys.argv[1]
	else:
		return None

def ask_user_interactively():
	"Ask user for his name"
	return raw_input("What's your name? ")

def greet_user(name):
	"Send user a personalized greeting"
	print "Nice to meet you,", name

def main():
	"This is the main program"
	say_hello()
	name = ask_user_from_cli()
	if name is None:
		name = ask_user_interactively()
	greet_user(name)

if __name__== '__main__':
	main()
Hoffe jemand hat einen Hinweis für mich, mit dem ich diesen Fehler beheben kann.

Viele Grüße,
pee

Verfasst: Freitag 27. Februar 2009, 07:58
von gkuhl
Hallo Pee, wilkommen im Forum,

ersetze mal die Kommas in den Zeilen 5 und 16 durch einfache Anfuehrungszeichen, dann sollte es funktionieren.

Code: Alles auswählen

''' 
This program greets the user and asks him for a name,
but only if the name has not been specified on the
command line interface as its first argument. Then
it welcome the user with a nice personalized message.

Call this program either as:
    hello2.py "John Doe"
or as
    hello2.py
'''
Gruesse
Gerrit

Verfasst: Freitag 27. Februar 2009, 08:08
von pee
Vielen Dank für deine Antwort. Das Skript funktioniert nun.

In meinem Buch steht, dass das GUI-Toolkit Tkinter Teil der »batteries included« Python Standard Library ist. Ich musste unter Ubuntu 8.10 jedoch mit dem Paketmanager Tkinter nachinstallieren, damit ein Skript funktionierte, welches es benötigte. Ist also Tkinter bei Python nicht »automatisch dabei«?

Verfasst: Freitag 27. Februar 2009, 08:51
von kbr
pee hat geschrieben:In meinem Buch steht, dass das GUI-Toolkit Tkinter Teil der »batteries included« Python Standard Library ist. Ich musste unter Ubuntu 8.10 jedoch mit dem Paketmanager Tkinter nachinstallieren, damit ein Skript funktionierte, welches es benötigte. Ist also Tkinter bei Python nicht »automatisch dabei«?
Tkinter als Python-Wrapper für Tk schon, Tk hingegen ist kein Bestandteil von Python und muß eventuell nachinstalliert werden. Die Originaldokumentation mit diesem Hinweis zu Tkinter findest Du hier: http://docs.python.org/library/tkinter. ... le-Tkinter

Das Buch von Farid Hajji finde ich auch recht gut gelungen.

Verfasst: Freitag 27. Februar 2009, 08:58
von pee
Gibt es ein GUI-Toolkit, welches bei Python direkt dabei ist?

Kennt jemand von euch eine Website mit Python-Tutorials? Mich interessiert, wie ich mit Python eine Mp3-Datei abspielen kann. Danke für eure Postings, ich freue mich jedes Mal über eine Antwort.

Verfasst: Freitag 27. Februar 2009, 09:10
von BlackJack
@pee: Tkinter ist in den offiziellen Python-Quellen dabei, gehört also zur Standardbibliothek. Viele Linuxdistributionen machen trotzdem ein eigenes Paket daraus, weil Linux und Python auch auf Servern eingesetzt wird, wo man oft weder Tkinter braucht, noch Tk und einen XServer und andere Abhängigkeiten, die man sich einhandelt, wenn man eine GUI-Bibliothek installiert.

So etwas wie `distutils` ist auch oft noch einmal in einem Extra-Paket.

Verfasst: Freitag 27. Februar 2009, 09:28
von gerold
pee hat geschrieben:wie ich mit Python eine Mp3-Datei abspielen kann
Hallo pee!

Willkommen im Python-Forum! :-)

Du könntest z.B. den mplayer aufrufen oder fernsteuern.
http://www.python-forum.de/post-125567.html#125567

mfg
Gerold
:-)

Verfasst: Freitag 27. Februar 2009, 09:54
von pee
Ich hab es tatsächlich geschafft Mplayer mit Python anzusteuern und eine Mp3 abzuspielen. Vielen Dank für den Link zum Thread mit der Erklärung.