OS機能の使用(Python_19)

この連載では、Pythonについて色々な形で再学習に取り組んでいます。前回の記事はこちらになります。

hirocom777.hatenadiary.org

前回は、モジュールの読み込み方について学びました。

今回は標準ライブラリの1つである、OSモジュールの使用です。ファイルやディレクトリ操作ができます。

標準ライブラリ

前回までは、自作したモジュール、パッケージを呼び出す形で使用していました。これとは別に、Pythonにはあらかじめ用意してある標準ライブラリがあります。Pythonでファイルやディレクトリ操作を行う場合には標準ライブラリ「osモジュール」を用います。標準ライブラリも使用する際には、自作モジュールと同様にimport文を使用して呼び出します。

import os

# フルパスファイル名を返す
print(os.__file__) #C:\Users\XXX\anaconda3\Lib\os.py

# モジュール名を返す
print(os.__name__) #os

前回までで扱った自作モジュール同じ挙動ですね。

osモジュール

PythonはさまざまなOS(オペレーティングシステム)の環境下で使用できます。この時OS依存の機能を使用する場合に、OSモジュールを使います。

https://docs.python.org/ja/3/library/os.html#module-os

ここではWinsows11環境下での使用例をご紹介します。たくさんありますが、こんなものがあるんだということを認識しておくといいでしょう。

ファイル、フォルダーの操作

ファイル、フォルダー操作の基本です。「作業フォルダー」とはスクリプトが実行されているフォルダーです。 以下、「path」はファイル、フォルダーのパス、「scr」、「dst」はファイル、フォルダーの名前を指します。

関数 機能
os.chdir(path) 作業フォルダーを指定パスに変更する
os.mkdir(path) 指定パスのフォルダーを作成する 
os.rmdir(path) 指定パスのフォルダーを削除する。フォルダーの中身は空でないとエラーになる 
os.path.isdir(path) 指定パスのフォルダーが存在するか確認する(存在するとTrue)
os.path.exists(path) 指定パスのファイルが存在するか確認する (存在するとTrue)
os.rename(src, dst) ファイルやフォルダーの名前を変更する(scr→dstに変更する)
os.remove(path) 指定したファイルを削除する

ファイル、フォルダー名の操作

指定したパスから、必要な部分を切り出したり加工できたりします。

関数 機能
os.path.dirname(path) フォルダー名だけを取り出す
os.path.basename(path) ファイル名だけを取り出す
os.path.join(path1,path2,path3) パスを結合する
os.path.split(path) パスをフォルダーとファイル名に分割する
os.path.abspath(path) 指定したパスの絶対パスを返す

ファイル、フォルダー情報の取得

指定したパスのファイル、フォルダー情報を取得できます。

関数 機能
os.path.isfile(path) 指定したパスがファイルかどうかを確認する(ファイルだとTrue)
os.path.getsize(path) 指定したファイルのサイズを取得する
os.stat(path) ファイルやフォルダーの属性を取得する
os.listdir(path) 指定したフォルダー内のファイルやフォルダーのリストを返す

その他

その他、知っておくと便利なコマンドです。「command」は、windowsの場合コマンドプロンプトのコマンド("dir"など)を指します。

関数 機能
os.getcwd() 現在の作業フォルダーパスを取得する
os.system(command) シェルコマンドを実行する

次回はクラス

いかがでしょうか。標準ライブラリの例としてosモジュールをご紹介しました。標準ライブラリはこの他にもたくさんあります。機会を見てご紹介していきたいと思います。次回はクラスです。クラスを使ってオブジェクトを作ることができるのですが、どのように使うのでしょうか。お楽しみに!!

Python再学習のまとめはこちら!!