Seite 1 von 1
Wenn Datei vorhanden ... wenn nicht dann ... ??
Verfasst: Montag 23. Februar 2004, 21:17
von Topcam
Hallo .
Ich bin mit dem Thema PYTHON noch nicht ganz auf Du und Du.
Meine Frage:
Was mache ich hier falsch ?????
######Code gelöscht######
#Da hier ja erst gemotzt wird und dann noch nicht mal geholfen wird#
Danke
Topcam
Neue Frage :
wie mache aus eine INT ein Str und anders rum ?
Da mein File was ausgelesen wird nur Zahlen beinhaltet und ich diese mit einer ZAHL Plus nehmen möchte.
Topcam ( besser so ?)
Verfasst: Montag 23. Februar 2004, 21:37
von Milan
Hi. Tut mir leid wenn ich zuerst meckere, aber darauf muss ich bestehen: Quellcode kommt immer in Codetags des
BBCodes. Das ist zwingend für Lesbarkeit und außerdem
Vorschrift
Gruß, Milan
Verfasst: Mittwoch 25. Februar 2004, 09:35
von HarryH
Hallo Topcam,
######Code gelöscht######
#Da hier ja erst gemotzt wird und dann noch nicht mal geholfen wird#
Topcam, sieh doch die Kritik von Milan nicht gleich so hart. Es ist nun mal nötig bestimmte Richtlinien einzuhalten. Es profitiert nur jeder davon!
Nun zu deiner anderen Frage:
wie mache aus eine INT ein Str und anders rum ?
int zu string:
string zu int (geht nartürlich nur mit Zahlenstrings):
Verfasst: Mittwoch 25. Februar 2004, 11:27
von Gast
Danke für Dein Verständnis.
Wenn man mir gesagt hätte, das das einfügen des Codes so geht:
Code: Alles auswählen
#!/usr/bin/python
def datei_lesen (datei):
try:
in_file = open(datei,"r")
# Datei zum Lesen (r: read w: write a: anhängen) öffnen
except IOError:
in_file = open(datei,"w")
in_file.write("1")
in_file.close()
return 0
else:
zahl = in_file.read() # Datei lesen
> int("zahl") #Hier liegt der Hund begraben ??????
> C = zahl + 1 #????????????
in_file= open(datei,"w")
#in_file.seek(2)
in_file.write(C)
in_file.close() # Datei schliessen
print C # und Inhalt ausgeben
return 1
pfad = 'f:/www/labor/' # hier anpassen!
dateiname = 'test.txt' #raw_input('Dateiname eingeben: ')
print '\n\nLese die Datei: ' + dateiname
ergebnis = datei_lesen(pfad+dateiname)
if ergebnis == 1:
print 'Gelesen: ' + dateiname
print 'Fertig . . . (viewer.py)'
wäre ich ja schon zufrieden gewesen. Da ich nicht der einzigste hier bin
der Code Eintragungen ohne "CODE" "/CODE" gemacht hat.
Jetzt aber noch eine Frage zu meinem Code:
Wie man sieht versuche ich dirch das einlesen die vorhandene Zahl
um 1 zuerhöhen. Wie gehe ich da am besten vor ?
Topcam
Verfasst: Mittwoch 25. Februar 2004, 12:01
von Milan
Hi. Tut mir wirklich leid und ich mein das oben auch nicht böse, aber als Moderator ist es meine Aufgabe auf das hinzuweisen. Die Regeln existieren auch erst seit kurzen in so klarer Form. Auf dem Link ist ja eigentlich auch zu sehen, wie die tags aussehen, also eigentlich konstruktive Kritik und kein reines rummeckern
.
Aber nun mal weiter im Text: Du musst int die VAriable übergeben und das Ergebniss auch wieder speichern. Schlussendlich musst du aber wieder in einen String zurückwandeln. Du musst also nur deins so hier umschreiben:
Code: Alles auswählen
zahl = in_file.read() # Datei lesen
zahl=int(zahl)
c=zahl+1
in_file= open(datei,"w")
#in_file.seek(2)
in_file.write(str(C))
Verfasst: Mittwoch 25. Februar 2004, 12:16
von akIra
viel spass, und keine Fragen, was denn das für merkwürdige Pfadangaben seien
Code: Alles auswählen
#!/usr/bin/python
def datei_lesen (datei):
zahl = 1
try:
in_file = open(datei,"r")
zahl = int(in_file.read()) # Datei lesen
except ValueError:
in_file.close()
return 2
except IOError:
in_file = open(datei,"w")
in_file.write(str(zahl))
in_file.close()
return 0
else:
zahl = zahl + 1 #????????????
in_file= open(datei,"w")
in_file.write(str(zahl))
in_file.close() # Datei schliessen
print zahl # und Inhalt ausgeben
return 1
pfad = "C:\\"
dateiname = 'test.txt' #raw_input('Dateiname eingeben: ')
print '\n\nLese die Datei: ' + dateiname
ergebnis = datei_lesen(pfad+dateiname)
if ergebnis == 1:
print 'Gelesen: ' + dateiname
print 'Fertig . . . (viewer.py)'
elif ergebnis == 2:
print 'Typenfehler !'
else:
print "Datei",dateiname,"erfolgreich erstellt."
Verfasst: Donnerstag 26. Februar 2004, 08:35
von Topcam
Ich danke für die schnelle Hilfe.
Das mit dem Meckern habe ich schon runtergeschluckt.
Kann ja vorkommen.
Topcam