python findet txt Datei nicht?

3 Antworten

Wenn das vorkommt ist fast immer die Ursache, dass der Pfad falsch angegeben wurde. Die Pfadangabe passt nicht zum eigentlichen Ort, an dem die Datei liegt.

Stelle auch sicher, dass du die Datei gespeichert hast und dass sie auch wirklich die ".txt"-Endung hat, mit der du sie ja aufzurufen versuchst.


Seralqwuan 
Beitragsersteller
 29.01.2025, 15:48

Erstmal Danke! also ich habe nochmal geguckt und die .txt Datei ist im gleichen Ordner, wo ich auch die Python Dateien habe

Destranix  29.01.2025, 15:49
@Seralqwuan

Nur führst du ja kein python-Programm aus, sondern verwendest die Python-Shell. Wo die ihr Arbeitsverzeichnis hat lässt sich nicht sehen.

Mach mal:

import os
os.getcwd()
Seralqwuan 
Beitragsersteller
 29.01.2025, 15:52
@Destranix

okay, genauso eingeben oder muss ich in die Klammer den Dateinamen eintippen mit "xx.txt"?

Destranix  29.01.2025, 15:53
@Seralqwuan

Ne, genau so.

Das erste importiert dir das "os"-Modul. Das zweite gibt dir das Arbeitsverzeichnis der Shell aus.

Seralqwuan 
Beitragsersteller
 29.01.2025, 15:54
@Destranix

also bei mir kommt dann: SyntaxError: multiple statements found while compiling a single statement

Seralqwuan 
Beitragsersteller
 29.01.2025, 15:58
@Seralqwuan

ahhh sorry jetzt hats geklappt xD bei mir ist das in documents

Destranix  29.01.2025, 16:00
@Seralqwuan

Das Arbeitsverzeichnis ist das Verzeichnis, in dem die Applikation, hier deine Shell, gerade arbeitet.

Dies ist hier ein wahrscheinlich ein anderes Verzeichnis als das, wo deine Textdatei liegt.

Du hast jetzt mehrere Optionen:

1.) Du wechselst das Arbeitsverzeichnis zu dem Verzeichnis, wo dein Textfile liegt.

2.) Du erstellst den Textfile im Arbeitsverzeichnis.

3.) Du verwendest einen relativen oder absoluten Pfad zum Textfile.

Beispiele kann ich dir geben, wenn du mir die genauen Pfade von deiner Datei und dem Arbeitsverzeichnis gibst.
(Gegebenenfalls mit anonymisiertem Nutzernamen, falls der Pfad deinen Nutzernamen enthält.)

Seralqwuan 
Beitragsersteller
 29.01.2025, 16:04
@Destranix

vielen dank! Also ich hab als Arbeitsverzeichnis '/Users/Luna/Documents' und die Textdatei befindet sich auf meinem Mac auf dem "Schreibtisch" (/Users/luna/Desktop)

Destranix  29.01.2025, 16:09
@Seralqwuan

Zu 1.)

os.chdir('~/Desktop')

oder auch

os.chdir('/Users/Luna/Desktop')

Zu 3.)

Relativer Pfad:

../Desktop/text1.txt

Absoluter Pfade:

/Users/Luna/Desktop/text1.txt

Die Tilde ~ ist gleichbedeutend mit dem Nutzerverzeichnis des verwenders. Die zwei Punkte .. meinen das Elternverzeichnis des aktuellen Verzeichnisses.

Seralqwuan 
Beitragsersteller
 29.01.2025, 16:13
@Destranix

danke nochmal! Also ich habe jetzt eingegeben f = open(/Users/Luna/Desktop/text1.txt) als Antwort bekomme ich dann aber SyntaxError: invalid syntax und das / vor users ist dann rot markiert

Seralqwuan 
Beitragsersteller
 29.01.2025, 16:18
@Destranix

ahh danke, also jetzt bekomme ich keine Fehlermeldungen mehr. in meiner txt Datei hab ich geschrieben: print("hallo"), müsste das dann nicht erscheinen, weil das tut es irgendwie nicht?

Destranix  29.01.2025, 16:25
@Seralqwuan

Ne, du öffnest nur den File. Du bekommst quasi ein File-Handel und mit dem kannst du dann wieterarbeiten (z.B. read oder write damit machen).
Und nach dem Verwenden schließt du das Handle wieder.

Seralqwuan 
Beitragsersteller
 29.01.2025, 16:26
@Destranix

ahhh okay das wusste ich nicht, alles klar! Danke vielmals für deine Hilfe!!

was ich falsch gemacht habe?

Entweder ist die Datei nicht im gleichen Verzeichnis wie dein Python-Programm oder aber bereits exklusiv geöffnet und damit für andere Programme als deinen Editor gesperrt.


Seralqwuan 
Beitragsersteller
 29.01.2025, 15:46

ich hab die text Datei eigentlich geschlossen und im gleichen Ordner wie das python Programm :(

Wenn du unter Linux arbeitest, Versuche mal

./Datei
Woher ich das weiß:Studium / Ausbildung – Begeisterter Beweger der 0 und 1

Seralqwuan 
Beitragsersteller
 29.01.2025, 15:45

f = open(./"text1.txt") wäre das dann oder sieht das anders aus?