Python Tutorial
- jetzt Python programmieren lernen

Python Modul os – arbeiten mit Betriebssystemfunktionalität

In Python ist da Modul os bereits integriert. Dieses kann nach dem typischen Import einfach genutzt werden. Es muss also nicht Installiert werden über PIP.

import os

Name des Betriebssystems über os.name

In der Variablen os.name kann abgerufen werden, ob es ein Windows-System oder ein Linus-System ist. Was ist mich dem macOS? Der Mac basiert auf Unix, daher erhalten wir auch dort dann als Rückmeldung „posix“.

import os
print(os.name)

Als Rückmeldung erhalten wir:
nt für Windows
posix für Linux/Unix und den Mac

Arbeitsverzeichnis auslesen getcwd()

Das aktuelle Arbeitsverzeichnis kann über getcwd() ermittelt werden. Die englische Anweisung wird mit Übersetzung klar: getcwd -> get current working directory - > hole aktuelles Arbeitsverzeichnis

import os
print(os.getcwd())

Unter einem Mac:
/Users/axelp/Documents/Projekte/Python-lernen.de/Skripte

Arbeitsverzeichnis ändern os.chdir(Pfad)

Die Funktion os.chdir(Pfad) kann das Arbeitsverzeichnis geändert werden. Die Anweisung steht für das englische „change directory“.

Mögliche (vorhandene) Systemvariablen os.environ

Eine Abfrage für die im genutzten Betriebssystem vorhandenen Systemvariablen.

import os
print(os.environ)

Führt man das Python-Programm mit dem Mac aus, erhält man folgende Ausgabe:

environ({'USER': 'axelp', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'LOGNAME': 'axelp', 'SSH_AUTH_SOCK': '/private/tmp/com.apple.launchd.cXrqjKktJJ/Listeners', 'HOME': '/Users/axelp', 'SHELL': '/bin/zsh', '__CF_USER_TEXT_ENCODING': '0x1F5:0x0:0x3', 'TMPDIR': '/var/folders/7c/xrfbm9tx6nv5kwgw0mx0h4840000gn/T/', 'XPC_SERVICE_NAME': '0', 'XPC_FLAGS': '0x0', 'LC_CTYPE': 'UTF-8', 'PYTHONPATH': '/Applications/Python 3.9/IDLE.app/Contents/Resources', 'DYLD_LIBRARY_PATH': '/Applications/Python 3.9/IDLE.app/Contents/Frameworks', 'DYLD_FRAMEWORK_PATH': '/Applications/Python 3.9/IDLE.app/Contents/Frameworks'})

Wen jetzt die Frage plagt, was man mit den gesetzten Systemvariablen machen könnte, wird sich den folgenden Befehl freuen:

Systemvariablen abfragen os.getenv(key)

Mit diesem Befehl erhält man Informationen über System-Variablen (ist abhängig zum Betriebssystem. Unter MacOS bekommt man über folgende Abfrage das HOME-Verzeichnis:

import os
print(os.name)
print(os.getcwd())
print(os.getenv('HOME'))

Als Rückgabe erhalten wir:

posix

/Users/axelp/Documents/Projekte/Python-lernen.de/Skripte

/Users/axelp

Verzeichnisinhalt auflisten os.listdir(Pfad)

Um den Inhalt eines Verzeichnisses auszulesen, gibt es den Befehl os.listdir(Pfad). Hiermit erhalten wir eine Liste von den Dateien aus dem angegebenen Pfad. Wenn kein Pfad angegeben wird, wird die Liste aus dem aktuellen Pfad erstellt:

import os
print(os.getcwd())
print(os.listdir())

Und als Ergebnis ein List-Objekt:

['datei1.pdf', 'datei2.txt', 'programm3.py']

Verzeichnis löschen über os.rmdir(Pfad)

Ein Verzeichnis wird über die Anweisung os.rmdir(Pfad) gelöscht

Datei löschen über os.remove(Pfad)

Eine Datei wird über die Anweisung os.remove(Pfad) gelöscht. Um Verzeichnisse zu löschen wird die Anweisung os.rmdir(Pfad) benötigt. Über die Anweisung isfile() und isdir() kann im Vorfeld überprüft werden, ob eine Datei oder ein Verzeichnis vorliegt.

Verzeichnis oder Datei? os.path.isfile('Pfad') und os.path.isdir('Pfad')

Über die Abfrage können wir ermitteln, ob Verzeichnis oder Datei. Als Rückmeldung bekommen wir „True“ bzw. „False“.

import os
print(os.path.isfile('datei.pdf'))
print(os.path.isdir('datei.pdf'))

Datei umbenennen über os.rename(Alter_Name, Neuer_Name)

Über die Anweisung os.rename() können sowohl Dateien wie auch Verzeichnisse umbenannt werden.

Systembefehle ausführen über os.system(Systembefehl)

Mit dem Befehl os.system(Systembefehl) können Systembefehle ausgeführt werden. Wenn man das System kennt, dann passt alles. Soll aber das Python Programm auf allen Systemen laufen, sollte man das verwendete System abfragen und die entsprechenden Systembefehle dann passen ausführen lassen.

Schauen wir uns die Anweisung für den Mac an und aktivieren die Sprachausgabe beim Mac (die Standardmäßig installiert ist):

import os
os.system('say "Hallo Python"')

Lautsprecher aufdrehen und der Computer sollte nun laut und deutlich „Hallo Python“ von sich geben.

Weiterempfehlen • Social Bookmarks • Vielen Dank

Bitte unterstützen Sie dieses Projekt

Sie können dieses Projekt in verschiedenen Formen unterstützen - wir würden uns freuen und es würde uns für weitere Inhalte motivieren :).

Empfehlen Sie es weiter - wir freuen uns immer über Links und Facebook-Empfehlungen.

Das neue E-Book zum Kurs gibt es zum Kaufen.

Sie können uns auch eine Spende über PayPal zukommen lassen.

Bestellen Sie Bücher über folgenden Link bei Amazon:
Bücher über Python

Vielen Dank für Ihre Unterstützung