Anzeige(1)

  • Liebe Forenteilnehmer,

    Im Sinne einer respektvollen Forenkultur, werden die Moderatoren künftig noch stärker darauf achten, dass ein freundlicher Umgangston untereinander eingehalten wird. Unpassende Off-Topic Beiträge, Verunglimpfungen oder subtile bzw. direkte Provokationen und Unterstellungen oder abwertende Aussagen gegenüber Nutzern haben hier keinen Platz und werden nicht toleriert.

Brauche dringend HILFE beim Programmieren!!!! PYTHON

Silvestergirly

Aktives Mitglied
Hallo liebes Forum,ich bin Computer und Technick anbelangt nicht so talentiert.
Da wir aber gerade mit Python in der Schule arbeiten und ich nicht weiter komme, wollte ich mein Problem hier präsenz machen.

Vom Lehrer haben wir Pthoncode bekommen, (der in der Schule auch funktionierte) in den wir eine Klasse einfügen und ein Objekt erstellen sollen. Das Was ich groß geschrieben habe, ist das, was ich selber einfügen sollte.

Folgendes Problem. Ich verstehe einfach nicht, dass die Ursprungsdatei, ohne "Überschrift" bei mir auf den Rechner einfach nicht funktionieren soll. So haben wir sie ja bekommen und funktionierte sie auch auf den Rechnern in der Schule aber irgendwie auf meinem Pc nicht und ich habe so viel schon durchgeforstet etc und verstehe das Problem einfach nicht. Sind es falsche anführungszeichen? Irgendetwas falsch? Ich weis es nicht
frown.gif

Stimmt was mit meinem Programm nicht?
Es kommt immer die Meldung "Syntax-Error"


Würde mich riesig freuen, wenn mir da einer helfen kann, der sich mit dem Programm auskennt!!!

# Objektorientierte Modellierung eines HTML-Dokuments
#
# 1. Klassendefinitionen (Klassen sind Bauplaene fuer Objekte)
# 2. Objekte erzeugen (Klassen werden benutzt um Objekte zu erzeugen)
#

# Objektorientierte Modellierung eines HTML-Dokuments
#
# 1. Klassendefinitionen (Klassen sind Bauplaene fuer Objekte)
# 2. Objekte erzeugen (Klassen werden benutzt um Objekte zu erzeugen)
#

#
# 1. Klassendefinitionen (Klassen sind Bauplaene fuer Objekte)
#
class HTMLDokument:
def __init__(self):
self.head = ''
self.body = ''
def setzeHead(self,h):
self.head = h
def setzeBody(self,b):
self.body = b
def schreibeHTML(self):
print '<html>'
self.head.schreibeHTML()
self.body.schreibeHTML()
print '</html>'

class Head:
def __init__(self):
self.titel = ''
def setzeTitel(self,t):
self.titel = t
def schreibeHTML(self):
print '<head>'
self.titel.schreibeHTML()
print '</head>'


class Titel:
def __init__(self):
self.text = ''
def setzeText(self,t):
self.text = t
def schreibeHTML(self):
print '<title>'
print self.text
print '</title>'


class Body:
def __init__(self):
self.ueberschrift = ''
self.absatz1 = ''
def setzeUeberschrift(self,u):
self.ueberschrift = u
def setzeAbsatz1(self,a1):
self.absatz1 = a1
def schreibeHTML(self):
print '<body>'
#self.uberschrift.schreibeHTML()
self.absatz1.schreibeHTML()
print '</body>'

# ACHTUNG: Klasse Ueberschrift fehlt !!!!

class Ueberschrift:
def _init_(self):
self.text = ''
def setzeText(self,t):
self.text = t
def schreibeHTML(self):
print '<h>'
print self.text
print'</h>'


class Absatz:
def __init__(self):
self.text = ''
def setzeText(self,t):
self.text = t
def schreibeHTML(self):
print '<p>'
print self.text
print '</p>'


#
# 2. Objekte erzeugen (Klassen werden benutzt um Objekte zu erzeugen)
#

dok = HTMLDokument()

my_head = Head()

t = Titel()

t.setzeText('Das ist mein Titel fuer das erzeugte HTML-Dokument')
my_head.setzeTitel(t)

my_body = Body()
derUrlaub=Ueberschrift()
derUrlaub.setzeText()
a = Absatz()
a.setzeText('Der erste Absatz meine Dokuments. Leider ist es nicht so leicht Umlaute in Python und HTML korrekt einzugeben daher nur ae, ue, oe und ss.')
my_body.setzeAbsatz1(a)


dok.setzeHead(my_head)
dok.setzeBody(my_body)


dok.schreibeHTML()
 
print'</h>'

An dem fehlenden Leerzeichen zwischen print und ' liegts nicht, oder?

Dass der Code ohne die fehlende Klasse nicht geht liegt wohl daran, dass die Klasse später ja aufgerufen wird. Wenn sie dann nicht definiert ist gibt das nen Fehler.

 
Hallo, danke für die Antwort.

Habs grad ausprobiert, an dem fehlenden Leerzeichen liegt es nicht...
ich hab die klasse ja alle definiert, daher verstehe ich den fehler nicht 🙁
normaler weise muss er ohne probleme durchlaufen können


print'</h>'

An dem fehlenden Leerzeichen zwischen print und ' liegts nicht, oder?

Dass der Code ohne die fehlende Klasse nicht geht liegt wohl daran, dass die Klasse später ja aufgerufen wird. Wenn sie dann nicht definiert ist gibt das nen Fehler.

 
Ich kenne mich mit Python nicht aus.

Aber vielleicht folgendes:

self.ueberschrift = ''

Müßte dann die folgende Klasse nicht auch in Kleinschrift definiert werden?:

"class Ueberschrift"?

Nur ne Idee.
 
PYCH - Index

Da kann man online Python Code testen. Wenn man das mit deinem Code macht, wird angezeigt, dass in Zeile 16 ein Fehler ist.
"unexpected indent" Bedeutet, dass eine Zeile nicht richtig eingerückt ist. Allerdings sehe ich keine falsche Einrückung, daher weiß ich nicht, ob das so hilfreich ist. Evtl. wurde aber auch anders eingerückt als du es hierher kopiert hast.

Du könntest mal den gesamten Code in ein Schreibprogramm kopieren und dann die Option anschalten, dass Leerzeichen und Zeilenumbrüche angezeigt werden. Dann siehst du, ob irgendwo eine Einrückung fehlt.

In welcher Umgebung programmierst du denn? Eine vernünftige IDE würde auch weiterhelfen, dann werden Fehler direkt angezeigt. So kenne ich es jedenfalls von Java Umgebungen, was es für Python gibt, weiß ich nicht.
 
PYCH - Index

Da kann man online Python Code testen. Wenn man das mit deinem Code macht, wird angezeigt, dass in Zeile 16 ein Fehler ist.
"unexpected indent" Bedeutet, dass eine Zeile nicht richtig eingerückt ist. Allerdings sehe ich keine falsche Einrückung, daher weiß ich nicht, ob das so hilfreich ist. Evtl. wurde aber auch anders eingerückt als du es hierher kopiert hast.

Du könntest mal den gesamten Code in ein Schreibprogramm kopieren und dann die Option anschalten, dass Leerzeichen und Zeilenumbrüche angezeigt werden. Dann siehst du, ob irgendwo eine Einrückung fehlt.

In welcher Umgebung programmierst du denn? Eine vernünftige IDE würde auch weiterhelfen, dann werden Fehler direkt angezeigt. So kenne ich es jedenfalls von Java Umgebungen, was es für Python gibt, weiß ich nicht.


danke, ja meine Umgebung ist IDE, aber das Programm makiert mir nur den Fehler
 

Anzeige (6)

Autor Ähnliche Themen Forum Antworten Datum
G Nachhilfeschüler ist extrem ruhig und lehnt Hilfe ab. Was tun? Schule 20

Ähnliche Themen

Anzeige (6)

Anzeige(8)

Regeln Hilfe Benutzer

Du bist keinem Raum beigetreten.

      Du bist keinem Raum beigetreten.

      Anzeige (2)

      Oben