[小ネタ] Pythonでライブラリを使わずクリップボードへテキストを張り付ける

2023.01.23

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

CX事業本部Delivery部のakkyです。

小ネタです。Pythonでテキストを生成し(長いSQL文を作ったり)、それを別のプログラムで利用したい場合は、ファイルへ保存するのもいいのですが、一時的なテキストの場合はクリップボードで受け渡してしまうのも簡単です。

Windowsにはclip.exeというプログラムがあるので、これをsubprosessから呼ぶと、ライブラリのインストール不要でテキストがコピーできます!

message = "hello world"

import subprocess
subprocess.run("clip", input=message, text=True)

(Windows 10、Python 3.10.4で動作確認)

なお、クリップボードからの読み取りが必要だったり、クロスプラットフォームを考慮する場合にはpyperclipというライブラリがあります。

参考Webページ