HOWTO · Python
Text in die Zwischenablage kopieren in Python
In diesem Tutorial wird erläutert, wie Sie in Python Text in die Zwischenablage kopieren.
Auf dieser Seite
Python-Clipboard-Werkzeuge übertragen Text in die Zwischenablage des Betriebssystems, damit er sich in eine andere Anwendung einfügen lässt. Für einfachen Text bietet pyperclip eine kompakte API zum Kopieren und optionalen Einfügen. Weitere Möglichkeiten sind pyperclip3 für bytebasierte Abläufe, clipboard und xerox als Alternativen, tkinter für GUI-Programme und pandas für Tabellen. Der Zugriff auf die Zwischenablage hängt vom Betriebssystem und der Sitzung ab, in der das Programm läuft.
Text mit pyperclip kopieren
Installieren Sie das Paket mit python -m pip install pyperclip. Das kurze Programm unten läuft mit der Python-Standardbibliothek und gibt den Textwert aus, den Sie in einer Umgebung mit installiertem Paket und verfügbarer Systemzwischenablage an pyperclip.copy() übergeben können.
text_to_copy = "Hello, Clipboard!"
print(text_to_copy)
Hello, Clipboard!
Um diesen Wert in die Zwischenablage zu übertragen, verwenden Sie import pyperclip und anschließend pyperclip.copy(text_to_copy). Mit pyperclip.paste() lesen Sie bei Bedarf den aktuellen Zwischenablage-Text aus. Für diese Paketaufrufe muss in der aktuellen Sitzung ein funktionierender Zugriff auf die Zwischenablage verfügbar sein. Unter manchen Linux-Konfigurationen sind außerdem eine Desktop-Sitzung und Clipboard-Hilfsprogramme erforderlich.
pyperclip3 verwenden, wenn Sie Bytes benötigen
Installieren Sie pyperclip3 mit python -m pip install pyperclip3, wenn Ihr Code Byte-Daten aus der Zwischenablage benötigt. Die Funktionen copy() und paste() verarbeiten Bytes. Konvertieren Sie Werte ausdrücklich: Verwenden Sie vor dem Kopieren einer Zahl str(number).encode("utf-8"). Dekodieren Sie anschließend die zurückgegebenen Bytes und wandeln Sie sie bei Bedarf wieder in eine Zahl um. Eine Zwischenablage speichert Text oder Bytes, aber nicht den ursprünglichen Python-Objekttyp.
Text mit dem Paket clipboard kopieren
Installieren Sie das Paket clipboard mit python -m pip install clipboard. Es stellt copy() und paste() bereit. Nach import clipboard as c rufen Sie beispielsweise c.copy("Python Clipboard") und c.paste() auf. Verwenden Sie bei beiden Aufrufen denselben Alias. Das Paket ist eine textorientierte Alternative und ist ebenfalls auf die Unterstützung der Zwischenablage durch die jeweilige Umgebung angewiesen.
xerox als weiteres Clipboard-Paket verwenden
Installieren Sie das Paket mit python -m pip install xerox. Für Text verwenden Sie dann import xerox, xerox.copy("Python Xerox Example") und xerox.paste(). Die Plattformunterstützung und mögliche Systemabhängigkeiten können je nach installierter Paketversion und Betriebssystem variieren. Falls der Zugriff auf die Zwischenablage nicht funktioniert, lesen Sie die Installationshinweise des Pakets.
tkinter für GUI-Anwendungen verwenden
Wenn Ihr Programm bereits eine GUI hat, kann tkinter die Zwischenablagen-Methoden des Fenstersystems nutzen. Falls das Modul fehlt, erfahren Sie hier, wie Sie tkinter in Python installieren. Dafür ist eine grafische Anzeige erforderlich. Erstellen Sie ein Root-Fenster und rufen Sie dann root.clipboard_clear(), root.clipboard_append(text_to_copy) und root.update() auf, um Text zu übertragen. update() verarbeitet Tk-Ereignisse; der Besitz der Zwischenablage und ihre Verfügbarkeit nach Programmende hängen vom Fenstersystem ab. GUI-Programme können ihre Ereignisschleife aktiv halten, während die Nutzerin oder der Nutzer mit dem Programm arbeitet.
Einen DataFrame mit pandas kopieren
Für Tabellendaten installieren Sie pandas und verwenden DataFrame.to_clipboard(), zum Beispiel df.to_clipboard(index=False, header=False). Dadurch wird eine Tabelle so formatiert, dass sie sich in eine Tabellenkalkulation oder eine andere Tabellenanwendung einfügen lässt. Die Methode eignet sich nicht dazu, beliebige Python-Objekte zu kopieren. Die beiden Argumente lassen Zeilenindizes und Spaltennamen weg. Entfernen Sie eines der Argumente, wenn der jeweilige Teil enthalten sein soll. Auch dieser Aufruf benötigt einen Zwischenablagen-Zugriff, den die aktuelle Umgebung unterstützt.