Heim Backend-Entwicklung Python-Tutorial Verwendung des Betriebssystemmoduls von Python und Beispiele

Verwendung des Betriebssystemmoduls von Python und Beispiele

Apr 22, 2023 pm 10:19 PM
python module os

Das Betriebssystemmodul von Python ist eine der Standardbibliotheken für die Interaktion mit dem Betriebssystem. Es bietet viele nützliche Funktionen und Variablen für die Arbeit mit Dateien und Verzeichnissen. Im Folgenden finden Sie die Verwendung einiger allgemeiner Betriebssystemmodulfunktionen:

1. Rufen Sie das aktuelle Arbeitsverzeichnis ab:

import os
cwd = os.getcwd()
print(cwd)
Nach dem Login kopieren

3. Listen Sie alle Dateien und Unterverzeichnisse im Verzeichnis auf:

import os
os.chdir('/path/to/new/directory')
Nach dem Login kopieren

4. Überprüfen Sie, ob der angegebene Pfad ein Verzeichnis ist:

import os
files = os.listdir('/path/to/directory')
print(files)
Nach dem Login kopieren

5. Überprüfen Sie, ob der angegebene Pfad eine Datei ist:

import os
path = '/path/to/directory'
if os.path.isdir(path):
    print("It's a directory")
else:
    print("It's not a directory")
Nach dem Login kopieren

6 eine Datei Existiert:

import os
path = '/path/to/file'
if os.path.isfile(path):
    print("It's a file")
else:
    print("It's not a file")
Nach dem Login kopieren

8. Erstellen Sie rekursiv ein neues Verzeichnis (falls das Verzeichnis nicht existiert):

import os
path = '/path/to/file'
size = os.path.getsize(path)
print(size)
Nach dem Login kopieren

. Löschen Sie eine Datei oder ein leeres Verzeichnis:

import os
path = '/path/to/file_or_directory'
if os.path.exists(path):
    print("It exists")
else:
    print("It doesn't exist")
Nach dem Login kopieren

11. Löschen Sie ein Verzeichnis und seinen Inhalt rekursiv:

import os
path = '/path/to/new/directory'
os.mkdir(path)
Nach dem Login kopieren

Einige andere praktische Verwendungsmöglichkeiten:

Die Methode 12.os.path.splitext() besteht darin, einen Pfad in zwei Teile aufzuteilen: Dateiname und Erweiterung. Es verwendet das letzte „.“ im Dateinamen als Trennzeichen, um den Dateinamen und die Erweiterung zu trennen. Wenn der Dateipfad beispielsweise „/path/to/file.txt“ lautet, gibt die Methode os.path.splitext() ein Tupel („/path/to/file“, „.txt“) zurück.

Es ist zu beachten, dass die zurückgegebene Erweiterung eine leere Zeichenfolge ist, wenn der Dateiname kein „.“ enthält. Wenn der Dateiname mit „.“ beginnt, wird er als Datei ohne Erweiterung betrachtet und die Methode os.path.splitext() gibt (Dateipfad, '') zurück.

Das Folgende ist ein Beispiel:

import os
path = '/path/to/new/directory'
os.makedirs(path, exist_ok=True)
Nach dem Login kopieren

Das Ausgabeergebnis ist:

Der Dateiname ist: /path/to/file

Die Erweiterung ist: .txt

13. Dateiberechtigungen festlegen:
import os
path = '/path/to/file_or_directory'
os.remove(path)
Nach dem Login kopieren

os Mit der Methode .chmod( ) können Sie die Zugriffsberechtigungen einer Datei oder eines Verzeichnisses ändern. Es akzeptiert zwei Parameter: Dateipfad und neuer Berechtigungsmodus. Der Berechtigungsmodus kann durch eine Oktalzahl dargestellt werden, wobei jedes Bit eine andere Berechtigung darstellt.

Hier sind einige Beispiele für Berechtigungsmuster:

0o400: Nur-Lese-Berechtigungen

    0o200: Schreibberechtigungen
  • 0o100: Ausführungsberechtigungen
  • 0o700: Alle Berechtigungen
  • 14 die Anzahl der CPUs:
  • import os
    path = '/path/to/directory'
    os.system('rm -rf ' + path)
    Nach dem Login kopieren

    Es ist zu beachten, dass die von os.cpu_count() zurückgegebene Anzahl der CPUs die Anzahl der physischen CPU-Kerne ist und nicht die virtuellen Kerne der Hyper-Threading-Technologie umfasst. In Systemen mit Hyper-Threading-Technologie ist jeder physische CPU-Kern in zwei virtuelle Kerne unterteilt, sodass die Methode os.cpu_count() möglicherweise eine Zahl zurückgibt, die größer ist als die tatsächliche Anzahl der CPU-Kerne.

  • Darüber hinaus kann die Methode os.cpu_count() auf verschiedenen Betriebssystemen unterschiedliche Implementierungen haben. Auf einigen Betriebssystemen wird möglicherweise nur die Anzahl der logischen CPU-Kerne zurückgegeben, nicht die Anzahl der physischen CPU-Kerne. Wenn Sie diese Methode verwenden, sollten Sie daher am besten die entsprechende Dokumentation konsultieren, um weitere Informationen zu erhalten.

15. Starten Sie einen neuen Prozess: Die Methode

import os
path = '/path/to/file.txt'
file_name, ext = os.path.splitext(path)
print('文件名为:', file_name)
print('扩展名为:', ext)
Nach dem Login kopieren

os.system() kann einen Befehl auf dem Betriebssystem ausführen und den Exit-Statuscode des Befehls zurückgeben. Sein Parameter ist ein Befehl vom Typ String, der jeder gültige Systembefehl sein kann.

Das Folgende ist ein Beispiel, das zeigt, wie die Methode os.system() zum Ausführen eines einfachen Befehls verwendet wird:

import os
os.chmod('/path/to/file', 0o777) # 设置读、写、执行权限
Nach dem Login kopieren

Der obige Code gibt die Zeichenfolge „Hello, World!“ aus und gibt den Exit-Statuscode des Befehls zurück (normalerweise dargestellt durch 0 Erfolg).

Es ist zu beachten, dass die Methode os.system() den aktuellen Prozess blockiert, bis die Befehlsausführung abgeschlossen ist. Wenn Sie den Befehl ausführen möchten, ohne den aktuellen Prozess zu blockieren, können Sie die Verwendung anderer Methoden im Unterprozessmodul in Betracht ziehen, beispielsweise subprocess.Popen().

Das Folgende ist ein weiteres Beispiel, das zeigt, wie die Methode os.system() verwendet wird, um einen komplexen Befehl auszuführen, z. B. die Verwendung von wget zum Herunterladen einer Datei auf einem Linux-System:

import os
cpu_count = os.cpu_count()
print('CPU数量为:', cpu_count)
Nach dem Login kopieren

Der obige Code lädt die von angegebene Datei herunter Der URL-Parameter wechselt in das durch den Parameter „output_dir“ angegebene Verzeichnis und gibt den Exit-Statuscode des Befehls zurück.

16.os.environ: Dies ist ein Wörterbuch, das die aktuellen Umgebungsvariablen enthält. Sie können os.environ[key] verwenden, um den Wert einer bestimmten Umgebungsvariablen abzurufen.

17.os.exec*(): Diese Methoden ermöglichen es Python-Programmen, andere Programme im aktuellen Prozess auszuführen und so den aktuellen Prozess zu ersetzen. Beispielsweise kann die Methode os.execv() ein Programm mithilfe einer angegebenen Argumentliste ausführen und so den aktuellen Prozess ersetzen.

18.os.fork(): Diese Methode kann einen untergeordneten Prozess auf dem Unix- oder Linux-Betriebssystem zur parallelen Ausführung von Programmen erstellen. Der untergeordnete Prozess kopiert den gesamten Speicherinhalt des übergeordneten Prozesses, einschließlich Code, Daten, Stapel usw., sodass das Programm weiterhin basierend auf dem übergeordneten Prozess ausgeführt werden kann.

19.os.kill(): Diese Methode wird verwendet, um ein Signal an den angegebenen Prozess zu senden. Sie können die Methode os.kill(pid, signal) verwenden, um ein bestimmtes Signal an einen bestimmten Prozess zu senden. Zu den häufig verwendeten Signalen gehören SIGINT (Interrupt-Signal), SIGTERM (Beendigungssignal) und SIGKILL (erzwungenes Beendigungssignal) usw.

20.os.pipe(): Diese Methode kann eine Pipe für die Kommunikation zwischen Prozessen erstellen. Die Methode os.pipe() gibt zwei Dateideskriptoren zurück, einen zum Lesen von Pipe-Daten und einen zum Schreiben von Pipe-Daten.

21.os.wait(): Diese Methode kann auf das Ende des untergeordneten Prozesses warten und dann den Statuscode des untergeordneten Prozesses zurückgeben. Sie können die Methode os.waitpid(pid, options) verwenden, um auf das Ende des angegebenen Prozesses zu warten und den Statuscode des Prozesses zurückzugeben.

22.os模块可以用来操作文件路径。例如,os.path.join(path, *paths)可以将多个路径拼接成一个完整路径,os.path.abspath(path)可以将相对路径转换为绝对路径,os.path.split(path)可以将路径分割成目录和文件名。

23.遍历目录树

import os
def list_files(path):
    for root, dirs, files inos.walk(path):
        for file in files:
            print(os.path.join(root, file))
list_files('.')
Nach dem Login kopieren

这段代码可以遍历当前工作目录及其子目录下的所有文件,并打印出它们的完整路径。

os.walk()是os模块中一个非常有用的函数,用于遍历指定目录及其子目录下的所有文件和目录。它返回一个三元组(root, dirs, files),其中root是当前目录的路径,dirs是当前目录下的子目录列表,files是当前目录下的文件列表。下面是一个os.walk()的详细解释和示例:

for root, dirs, files in os.walk(top, topdown=True, onerror=None, followlinks=False):
    # Do something with root, dirs, and files
Nach dem Login kopieren

top是指定的目录路径,可以是相对路径或绝对路径。

  • topdown是一个布尔值,表示遍历时是否先遍历当前目录,再遍历子目录。如果为True(默认值),则先遍历当前目录,再遍历子目录;如果为False,则先遍历子目录,再遍历当前目录。

  • onerror是一个可选的错误处理函数,如果在遍历过程中出现错误,则会调用这个函数。

  • followlinks是一个布尔值,表示是否跟随符号链接。如果为True,则会跟随符号链接遍历目录;如果为False(默认值),则会忽略符号链接。

在遍历过程中,os.walk()会依次遍历指定目录及其子目录下的所有文件和目录,并返回当前目录的路径、子目录列表和文件列表。可以通过遍历返回的三元组来处理目录和文件。例如,可以使用下面的代码列出指定目录下的所有文件和子目录:

import os
 
def list_files_and_dirs(path):
    for root, dirs, files in os.walk(path):
        print(f'Directory: {root}')
        for file in files:
            print(f'  File: {os.path.join(root, file)}')
        for dir in dirs:
            print(f'  Subdirectory: {os.path.join(root, dir)}')
 
list_files_and_dirs('.')
Nach dem Login kopieren

这段代码会遍历当前工作目录及其子目录下的所有文件和目录,并输出相应的信息。

需要注意的是,os.walk()只会遍历当前目录及其子目录下的文件和目录,不会遍历符号链接所指向的文件或目录。如果需要遍历符号链接所指向的文件或目录,需要设置followlinks=True。

Das obige ist der detaillierte Inhalt vonVerwendung des Betriebssystemmoduls von Python und Beispiele. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

PHP und Python: Verschiedene Paradigmen erklärt PHP und Python: Verschiedene Paradigmen erklärt Apr 18, 2025 am 12:26 AM

PHP ist hauptsächlich prozedurale Programmierung, unterstützt aber auch die objektorientierte Programmierung (OOP). Python unterstützt eine Vielzahl von Paradigmen, einschließlich OOP, funktionaler und prozeduraler Programmierung. PHP ist für die Webentwicklung geeignet, und Python eignet sich für eine Vielzahl von Anwendungen wie Datenanalyse und maschinelles Lernen.

Wählen Sie zwischen PHP und Python: Ein Leitfaden Wählen Sie zwischen PHP und Python: Ein Leitfaden Apr 18, 2025 am 12:24 AM

PHP eignet sich für Webentwicklung und schnelles Prototyping, und Python eignet sich für Datenwissenschaft und maschinelles Lernen. 1.PHP wird für die dynamische Webentwicklung verwendet, mit einfacher Syntax und für schnelle Entwicklung geeignet. 2. Python hat eine kurze Syntax, ist für mehrere Felder geeignet und ein starkes Bibliotheksökosystem.

Kann Visual Studio -Code in Python verwendet werden Kann Visual Studio -Code in Python verwendet werden Apr 15, 2025 pm 08:18 PM

VS -Code kann zum Schreiben von Python verwendet werden und bietet viele Funktionen, die es zu einem idealen Werkzeug für die Entwicklung von Python -Anwendungen machen. Sie ermöglichen es Benutzern: Installation von Python -Erweiterungen, um Funktionen wie Code -Abschluss, Syntax -Hervorhebung und Debugging zu erhalten. Verwenden Sie den Debugger, um Code Schritt für Schritt zu verfolgen, Fehler zu finden und zu beheben. Integrieren Sie Git für die Versionskontrolle. Verwenden Sie Tools für die Codeformatierung, um die Codekonsistenz aufrechtzuerhalten. Verwenden Sie das Lining -Tool, um potenzielle Probleme im Voraus zu erkennen.

Python vs. JavaScript: Die Lernkurve und Benutzerfreundlichkeit Python vs. JavaScript: Die Lernkurve und Benutzerfreundlichkeit Apr 16, 2025 am 12:12 AM

Python eignet sich besser für Anfänger mit einer reibungslosen Lernkurve und einer kurzen Syntax. JavaScript ist für die Front-End-Entwicklung mit einer steilen Lernkurve und einer flexiblen Syntax geeignet. 1. Python-Syntax ist intuitiv und für die Entwicklung von Datenwissenschaften und Back-End-Entwicklung geeignet. 2. JavaScript ist flexibel und in Front-End- und serverseitiger Programmierung weit verbreitet.

PHP und Python: Ein tiefes Eintauchen in ihre Geschichte PHP und Python: Ein tiefes Eintauchen in ihre Geschichte Apr 18, 2025 am 12:25 AM

PHP entstand 1994 und wurde von Rasmuslerdorf entwickelt. Es wurde ursprünglich verwendet, um Website-Besucher zu verfolgen und sich nach und nach zu einer serverseitigen Skriptsprache entwickelt und in der Webentwicklung häufig verwendet. Python wurde Ende der 1980er Jahre von Guidovan Rossum entwickelt und erstmals 1991 veröffentlicht. Es betont die Lesbarkeit und Einfachheit der Code und ist für wissenschaftliche Computer, Datenanalysen und andere Bereiche geeignet.

Kann gegen Code in Windows 8 ausgeführt werden Kann gegen Code in Windows 8 ausgeführt werden Apr 15, 2025 pm 07:24 PM

VS -Code kann unter Windows 8 ausgeführt werden, aber die Erfahrung ist möglicherweise nicht großartig. Stellen Sie zunächst sicher, dass das System auf den neuesten Patch aktualisiert wurde, und laden Sie dann das VS -Code -Installationspaket herunter, das der Systemarchitektur entspricht und sie wie aufgefordert installiert. Beachten Sie nach der Installation, dass einige Erweiterungen möglicherweise mit Windows 8 nicht kompatibel sind und nach alternativen Erweiterungen suchen oder neuere Windows -Systeme in einer virtuellen Maschine verwenden müssen. Installieren Sie die erforderlichen Erweiterungen, um zu überprüfen, ob sie ordnungsgemäß funktionieren. Obwohl VS -Code unter Windows 8 möglich ist, wird empfohlen, auf ein neueres Windows -System zu upgraden, um eine bessere Entwicklungserfahrung und Sicherheit zu erzielen.

Ist die VSCODE -Erweiterung bösartig? Ist die VSCODE -Erweiterung bösartig? Apr 15, 2025 pm 07:57 PM

VS -Code -Erweiterungen stellen böswillige Risiken dar, wie das Verstecken von böswilligem Code, das Ausbeutetieren von Schwachstellen und das Masturbieren als legitime Erweiterungen. Zu den Methoden zur Identifizierung böswilliger Erweiterungen gehören: Überprüfung von Verlegern, Lesen von Kommentaren, Überprüfung von Code und Installation mit Vorsicht. Zu den Sicherheitsmaßnahmen gehören auch: Sicherheitsbewusstsein, gute Gewohnheiten, regelmäßige Updates und Antivirensoftware.

So führen Sie Programme in der terminalen VSCODE aus So führen Sie Programme in der terminalen VSCODE aus Apr 15, 2025 pm 06:42 PM

Im VS -Code können Sie das Programm im Terminal in den folgenden Schritten ausführen: Erstellen Sie den Code und öffnen Sie das integrierte Terminal, um sicherzustellen, dass das Codeverzeichnis mit dem Terminal Working -Verzeichnis übereinstimmt. Wählen Sie den Befehl aus, den Befehl ausführen, gemäß der Programmiersprache (z. B. Pythons Python your_file_name.py), um zu überprüfen, ob er erfolgreich ausgeführt wird, und Fehler auflösen. Verwenden Sie den Debugger, um die Debugging -Effizienz zu verbessern.

See all articles