Eigener Dateiexplorer aber hab Probleme

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
tomtombusiness
User
Beiträge: 39
Registriert: Samstag 22. März 2014, 14:24
Kontaktdaten:

Hi Leutz

Und zwar habe ich vor mir ein eigenen dateiexplorer zu coden. Aber mein ansatz is zum kotzen.

Hab ihr irgendwie nen ansatz oder ggf sogar nen fertiges script?
Tutorials sind auf meiner Website zu finden.

Weiter Projektmitglieder werden Gesucht. Egal ob Profi oder Lernwilliger Anfänger
UMTS-Car Pi
ControlCar-Pi

Initiative Stottern ist ein Eisberg
Ein selbstbetroffener Stotterer erzählt von sich und seiner Intensivtherapie
Zum weiterlesen hier
BlackJack

@tomtombusiness: Was ist denn Dein Ansatz? Warum willst Du einen eigenen Programmieren? Bist Du mit den vorhandenen nicht zufrieden? Warum nicht? Und ist dass dann nicht schon die Antwort auf die Ansatzfrage?
tomtombusiness
User
Beiträge: 39
Registriert: Samstag 22. März 2014, 14:24
Kontaktdaten:

Ich bin zurzeit ein Autoradio mit der Hmbere am basteln.
Ich habe ein Fenster und links ne listbox mit den quellen und wenn ich zb usbstck auswähle soll rechts der rest stattfinden.

In der logig hab ich halt immer gefrüft ob der eintrag ein ordner is oder datei der haken an der sache is das ich auch zurück gehen will und so und da haperts.

Ich speichere den aktuellen pfad immer in eine datei und lesen den aus und hab dadurch versucht die navigation ans laufen zu bringen aber es muss doch eine einfachere möglichkeit geben
Tutorials sind auf meiner Website zu finden.

Weiter Projektmitglieder werden Gesucht. Egal ob Profi oder Lernwilliger Anfänger
UMTS-Car Pi
ControlCar-Pi

Initiative Stottern ist ein Eisberg
Ein selbstbetroffener Stotterer erzählt von sich und seiner Intensivtherapie
Zum weiterlesen hier
Benutzeravatar
pixewakb
User
Beiträge: 1412
Registriert: Sonntag 24. April 2011, 19:43

Du kannst auf den aktuellen Pfad z. B. mit os.getcwd() zugreifen. Meine Möglichkeit ist wahrscheinlich nicht optimal, aber wie im nachfolgenden Beispiel würde ich es erst einmal anpacken:

Code: Alles auswählen

import os

pfad = os.path.abspath(".").split("\\")

print("\\".join(pfad[:-1]))

BlackJack

@pixewakb: Schönes Beispiel warum man bei Pfaden nicht mit Zeichenkettenoperationen arbeiten sollte sondern mit den Funktionen aus `os.path`. Deine Operationen werden auf dem RaspberryPi nämlich nicht das gewünschte Ergebnis liefern.

@tomtombusiness: Mir ist aus der Beschreibung immer noch nicht klar was eigentlich das Problem ist. Geht es hier darum eine Verzeichnisebene höher zu gehen? Dafür gibt es die Funktionen in `os.path()` um eine Pfadkomponente abzutrennen. Oder reden wir beim „zurück gehen” von einer Verlaufsfunktion bei der man zu vorher besuchten Verzeichnissen zurückkehren kann? Die meisten Dateiexplorer können ja beides.
Benutzeravatar
pixewakb
User
Beiträge: 1412
Registriert: Sonntag 24. April 2011, 19:43

Manchmal sucht man hier im Python-Forum den "Like"-Button :wink:
BlackJack

Den kann man sich mit Bordmitteln ganz einfach selber basteln:

Code: Alles auswählen

import Tkinter as tk


def main():
    root = tk.Tk()
    tk.Button(root, text='Like').pack()
    root.mainloop()


if __name__ == '__main__':
    main()
SCNR. ;-)
tomtombusiness
User
Beiträge: 39
Registriert: Samstag 22. März 2014, 14:24
Kontaktdaten:

Ich suche halt im prinzip ansatzpunkte. Wie schon erwähnt klappt meine dee net bzw sie war ziemlich umständlich


ich suche halt kein verlauf sondern ich will halt später nur eine ebene wieder höher.

Was ich eig von euch wollte waren ansatzpunkte zb von nützlichen funktionen. Zwar hab ich 2 Bücher über phyto intus aber man lernt immer wieder dazu :-D
Tutorials sind auf meiner Website zu finden.

Weiter Projektmitglieder werden Gesucht. Egal ob Profi oder Lernwilliger Anfänger
UMTS-Car Pi
ControlCar-Pi

Initiative Stottern ist ein Eisberg
Ein selbstbetroffener Stotterer erzählt von sich und seiner Intensivtherapie
Zum weiterlesen hier
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

tomtombusiness hat geschrieben: Ich speichere den aktuellen pfad immer in eine datei und lesen den aus und hab dadurch versucht die navigation ans laufen zu bringen aber es muss doch eine einfachere möglichkeit geben
Merke Dir doch den Verlauf der Navigation in einer Datenstruktur, z.B. in einer Liste, die Du wie einen Stack nutzt. Gehst Du eine Ebene im Dateisystem in die Tiefe, so packst Du diese mittels ``append`` an die Liste. Wählst Du den "zurück"-Weg, so entfernst Du den obersten Eintrag mittels ``pop``:

Code: Alles auswählen

path = ["/", "home", "nelson", "Musik"]
# Pfad nach "unten" gehen
path.append("Die drei Fragezeichen")
print(path)
> ['/', 'home', 'nelson', 'Musik', 'Die drei Fragezeichen']

# Zurück nach "oben" gehen
path.pop()
> 'Die drei Fragezeichen'

print(path)
> ['/', 'home', 'nelson', 'Musik']
Den richten Pfad für das Auslesen aus dem Dateisystem kannst Du Dir ja dann mittels ``os.path.join`` aus der *gesamten* Liste zusammenbauen:

Code: Alles auswählen

import os
print(os.path.join(*path))
> '/home/nelson/Musik'
encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
Antworten