Nach Modularen Aufbau ASCII Fehler?
Verfasst: Sonntag 6. Mai 2012, 15:50
Hallo
Ich habe zwei Klassen in einer Datei die auch beide funktionieren,
wenn ich jetzt einen Modularen Aufbau mache und beide Klassen trenne und sie in eigene Dateien packe bekomme ich immer diesen Fehler:
hier mal meine beiden Klassen:
Train.py
Ride.py
Ich benutze die IDLE von Python unter Windows zum versuchen.
Ich habe zwei Klassen in einer Datei die auch beide funktionieren,
wenn ich jetzt einen Modularen Aufbau mache und beide Klassen trenne und sie in eigene Dateien packe bekomme ich immer diesen Fehler:
Denn bekomme ich aber nicht wenn ich beide Klassen zusammen habe,Traceback (most recent call last):
File "C:/Python27/Ride.py", line 1, in <module>
from Train import Train
File "C:/Python27\Train.py", line 19
SyntaxError: Non-ASCII character '\xe4' in file C:/Python27\Train.py on line 19, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details
hier mal meine beiden Klassen:
Train.py
Code: Alles auswählen
class Train(object):
""" Klasse definiert einen Zug """
def __init__(self,__seats):
self.__seats = __seats
self.__speed = 0
self.__passengers = 0
def getPassengers(self):
return self.__passengers
def getSpeed(self):
return self.__speed
def getSeats(self):
return self.__seats
def changeSpeed(self,action,__speed):
""" Methode zum ändern der Geschwindigkeit """
if __speed < 0:
print 'Nur positive Zahlen eingeben'
return
if action == 'bremsen':
act = -1
if self.__speed <= __speed:
print 'Zug fährt bereits langsamer'
return
elif action == 'beschleunigen':
act = 1
else:
print "Erbitte klare Anweisung"
return
while self.__speed != __speed:
self.__speed += 10*act
print self.__speed
def __getIn(self,people):
""" Methode zum Einsteigen von Personen """
if self.__speed == 0:
self.__seats -= people
else:
print '''Einsteigen nicht möglich.
Zug fährt mit %s km/h.''' %(self.__speed)
def __getOut(self,people):
""" Methode zum Aussteigen von Personen """
if self.__speed == 0:
self.__seats += people
else:
print '''Aussteigen nicht möglich.
Zug fährt mit %s km/h.''' %(self.__speed)
def changePeople(self, p_in=0, p_out=0):
if p_in:
self.__getIn(p_in)
self.__countPassengers(p_in)
if p_out:
self.__getOut(p_out)
print "Aktuelle Sitzplätze: %s" %(self.getSeats())
def __countPassengers(self, people):
self.__passengers += people
def __add__(self, dildo):
summe = self.__passengers + dildo.getPassengers()
print "Gesamtpassagierzahl %s" %(summe)
Code: Alles auswählen
from Train import Train
class Ride(Train):
def __init__(self, seats, line):
Train.__init__(self, seats)
self.__line = line
self.__stops = 0
def stationStop(self):
self.changeSpeed("bremsen", 0)
if self.__stops < len(self.__line)-1:
self.__stops +=1
print "Jetzt halt in %s" %(self.__line[self.__stops])