ich besuche eine weiterführende Schule und habe/hatte/und werde auch nie haben, Informatikunterricht oder dergleichen in dieser Schule. Aktuell mache ich mein Abitur (Ja, bald sind die Prüfungen ). Da ich in der Vergangenheit durch Monitore für Shopping-Seiten (um bspw. einen Restock von limitierten Schuhen mitzukriegen) auf Python aufmerksam geworden bin, habe ich entschieden, dass ich diese lernen und somit in die Welt der Programmiersprachen einsteigen möchte.
Nun aber zum eigentlichen Problem: Im Internet bin ich auf ein E-Book gestoßen, welches einen Python beibringen soll. Ich habe 73 von 120 Seiten gelesen und bin nun an dem Punkt angelangt, an dem man das erste "richtige" Programm konzipiert. Dieses dient dazu, Daten aus einem best. Verzeichnis als ZIP-Datei zu sichern.
Die Vorlage ist folgende:
Nach einigen Recherchen im Internet bin ich auf dem Schluss gekommen, dass ich bei #5. stattdessen mit dem Befehl#!/usr/bin/python
import os
import time
# 1. Die Dateien und Verzeichnisse, die gesichert werden sollen,
# werden in der folgenden Liste angegeben:
quellen = ['/home/swaroop/byte', '/home/swaroop/bin']
# Unter Windows muessen Sie die Pfade auf diese Weise angeben:
# quellen = ['C:\\Dokumente', 'D:\\Arbeit']
# 2. Die Sicherung muss in das folgende Hauptverzeichnis fuer
# Sicherungen gespeichert werden:
ziel_verzeichnis = '/mnt/e/sicherung/'
# Denken Sie daran, dies an Ihre Gegebenheiten anzupassen.
# 3. Die Dateien werden in einer ZIP-Datei gesichert.
# 4. Der Name der ZIP-Datei setzt sich aus dem aktuellen Datum
# und der Uhrzeit wie folgt zusammen:
ziel = ziel_verzeichnis + time.strftime('%Y%m%d%H%M%S') + '.zip'
# 5. Wir benutzen den Befehl zip (unter Unix/Linux), um die Dateien
# zu einem ZIP-Archiv zu komprimieren:
zip_befehl = 'zip -qr %s %s' % (ziel, ' '.join(quellen))
# Windows-Benutzer koennen z.B. PKZIP oder Info-ZIP in das
# Windows-Systemverzeichnis kopieren, damit dies funktioniert.
# Sicherung starten
if os.system(zip_befehl) == 0:
print 'Erfolgreiche Sicherung nach', ziel
else:
print 'Sicherung fehlgeschlagen!'
arbeiten muss.zipfile.ZipFile
Dies habe ich zunächst auch getan und bin somit auf meinen Lösungsansatz gekommen:
Das Problem hierbei ist, dass mir dann folgende Fehlermeldung ausgegeben wird:#!/usr/bin/python
import os
import time
import zipfile
#1. Zu sichernde Dateien und Verzeichnisse werden hier angegeben
quellen = 'C:\\Users\Abloh\Documents\Abloh\FA'
#2. Die Sicherung muss in das folgende Hauptverzeichnis fuer Sicherungen gespeichert werden
ziel_verzeichnis = 'C:\\Users\Abloh\Documents\Abloh'
# 3. Dateien werden in einer ZIP-Datei gesichert
# 4. Name der ZIP-Datei setzt sich aus dem aktuellen Datum und der Uhrzeit wie
# folgt zusammen:
ziel = ziel_verzeichnis + time.strftime('%Y%m%d%H%M%S') + '.zip'
# 5. Wir benutzen den Befehl zip (unter Unix/Linux), um die Dateien
# zu einem ZIP-Archiv zu komprimieren:
zip_befehl = zipfile.ZipFile (ziel, 'x'.join(quellen))
# Windows-Benutzer koennen z.B. PKZIP oder Info-ZIP in das
# Windows-Systemverzeichnis kopieren, damit dies funktioniert.
# Sicherung starten
if os.system(zip_befehl) == 0:
print ('Erfolgreiche Sicherung nach', ziel)
else:
print ('Sicherung fehlgeschlagen!')
Daraufhin habe ich es mit einem zweitem Lösungsansatz versucht:Traceback (most recent call last):
File "zip-programm.py", line 27, in <module>
if os.system(zip_befehl) ==0:
TypeError: system() argument 1 must be str, not ZipFile
Dies liefert allerdings komischerweise die Fehlermeldung:zip_befehl = zipfile.ZipFile(ziel, 'x'.join(quellen))
Ich würde mich freuen, wenn hier jemand eine Lösung auf mein Problem liefern könnte.ValueError: ZipFile requires mode 'r', 'w', 'x', or 'a'
Ansonsten wünsche ich allen hier noch eine schöne Zeit und einen erholsamen Abend.
Mit besten Grüßen
VirgilAbloh