ich habe mir den Kopf zermartert, stehe aber irgendwie auf dem Schlauch.
Ich möchte mir lediglich zwei Funktionen schreiben, die mir sagen, welches die größte oder welches die neuste Datei in einem Verzeichnis ist.
Das muss doch irgendwie über os gehen. Und dann irgendwie sortiert werden.
Das Problem ist, dass man zwar leicht nach z. B. der Dateigröße sortieren kann, aber dann nicht weiß, wie der Dateiname dazu ist.
Irgendwas mit Dictionary?
Habe mal etwas sinnfreien Code erzeugt:
Code: Alles auswählen
from os import *
dirpath = "C:/temp"
class CacheFile:
def __init__(self,n,s,t): #constructor method
self.name = n
self.size = s
self.time = t
chdir(dirpath) #changes working directory
print getcwd() #print current dir
print
cache_files = listdir(dirpath) #list all files in current directory
print cache_files
print
cf = []
for i in xrange(len(cache_files)):
cf.append(i)
print cf
print
#make class objects
for i in xrange(len(cf)):
cf[i] = CacheFile(cache_files[i],stat(cache_files[i])[6],stat(cache_files[i])[8])
#output
for i in xrange(len(cf)):
print cf[i].name, cf[i].size, cf[i].time
print
#sort a list
sizelist = []
for i in xrange(len(cf)):
sizelist.append(cf[i].size)
print sizelist
print
sizelist.sort()
print sizelist