Python Virtuelles Verzeichniss?

3 Antworten

Die Frage wäre einfacher zu beantworten, wenn das Ziel klar wäre.

Eine virtuelle Struktur über eine reale zu stülpen ist gar kein großes Thema, aber auch eine Art komplettes Dateisystem mit Inhalten in einer Datenstruktur zu halten ist machbar - Ich hoffe nur nicht, Du glaubst, Du könntest es auf diesem Wege hinbekommen, daß normale Dateioperationen dann auf dem virtuellen Kontrukt arbeiten - Das geht nämlich ohne weiteres nicht.

(Es ginge vielleicht schon, wenn man Aliasing benutzt)

Ich hoffe nur nicht, Du glaubst, Du könntest es auf diesem Wege hinbekommen, 

Nein. das was ich hingeschrieben habe war nur ein Beispiel, um deutlicher zu machen was ich meine.

Wie würde ich in Python eine Virtuelle Strucktur machen?

0
@MupfSpace

Indem DU einen (Verzeichnis) Baum aufbaust. Dafür kannst Du natürlich prinzipiell auch ein Dictionary nehmen.

Wie genau Du das modellieren möchtest, bleibt Dir überlassen, aber Du könntest Dich da an üblichen Dateisystemen orientieren. (Verzeichnisse sind auch nur Dateien über Dateien, behalte das im Hinterkopf bei der Modellierung)

0

set working path ... vituell ? etwas was nicht existiert existiert nich , auf irgendwas muss ja die file operation gemacht werden, also da gäbe es ramdisk die nur im speicher gehalten werden.. oder mounten einer image datei.

Irgendwie ist der code kaputt gegangen.

Hier die richtige version:

class MyVirtualPath("""was auch immer ich benötige"""):
    def __init__(self, emulated_path): #emulated_path ist der pfad wo ich dem Programm vorgaukeln will, das er sich da befindet
        self.PATH={
            "FILE:test.txt":{
                "file_header":{
                    #header of file
                    },
                "file_properties":{
                    #properties of file
                    },
                "file_content":{
                    #content of file
                    }
                },
            "FOLDER:pictures":{
                "FILE:tree.png":{
                    "file_header":{
                        #header of file
                        },
                    "file_properties":{
                        #properties of file
                        },
                    "file_content":{
                        #content of file
                        }
                    }
                }
            }
 


my_path = MyVirtualPath("./") #ab jezt soll das programm anstelle von ./ my_path verwenden, wenn es sich datein aus dem pfad ./ holen soll


Was möchtest Du wissen?