je suis en train d'apprendre Phython donc je ne sais pas beaucoup de ce langage de codage encore;)Supprimer les dossiers spécifiés multiples (+ Contenu) en Python
Je suis en train de supprimer certains dossiers prédéfinis (y compris il est contenu) avec un script python, je sais comment supprimer un dossier comme celui-ci:
def purgeOld():
import os,xbmc,shutil
xvbmc = os.listdir(xbmc.translatePath(os.path.join('special://home/addons/')))
addonfolder = xbmc.translatePath(os.path.join('special://home/addons/'))
for item in xvbmc:
if ('plugin.video.Blaaat0') in item:
print str(xvbmc)+str(item)
try:
shutil.rmtree(addonfolder+item, ignore_errors=True)
except:
pass
else:
pass
return
maintenant, je suis en train de le faire avec plusieurs dossiers ce que je ce que j'ai et travaille allmost, I ne supprimer le contenu de mes dossiers spécifiés, mais pas le dossier lui-même, comment puis-je changer cela OU devrais-je faire le complètement différent? je copier/coller quelques résultats de Google d'ici et l'a transformé en cette 'Frankencode';-P
class cacheEntry:
def __init__(self, namei, pathi):
self.name = namei
self.path = pathi
def setupXvbmcEntries():
entries = 3 #make sure this refelcts the amount of entries you have
dialogName = ["Blaaat1", "Blaaat2", "Blaaat3"]
pathName = ["special://home/addons/repository.Blaaat1","special://home/addons/repository.Blaaat2",
"special://home/addons/repository.Blaaat3"]
XvbmcEntries = []
for x in range(entries):
XvbmcEntries.append(cacheEntry(dialogName[x],pathName[x]))
return XvbmcEntries
def purgeOld():
import os,xbmc,shutil
# xvbmc = os.listdir(xbmc.translatePath(os.path.join('special://home/addons/')))
# addonfolder = xbmc.translatePath(os.path.join('special://home/addons/'))
# for item in xvbmc:
# if ('plugin.video.Blaaat0') in item:
# print str(xvbmc)+str(item)
# try:
# shutil.rmtree(addonfolder+item, ignore_errors=True)
# except:
# pass
# else:
# pass
XvbmcEntries = setupXvbmcEntries()
for entry in XvbmcEntries:
xvbmcaddons = xbmc.translatePath(entry.path)
if os.path.exists(xvbmcaddons)==True:
for root, dirs, files in os.walk(xvbmcaddons):
file_count = 0
file_count += len(files)
if file_count > 0:
for f in files:
os.unlink(os.path.join(root, f))
for d in dirs:
shutil.rmtree(os.path.join(root, d))
else:
pass
return
Espérons que je suis assez proche? OU devrais-je le faire d'une manière plus propre/meilleure peut-être? Avec mes meilleures salutations, Tim.