【これでバッチリ!】Pythonのosモジュール使い方まとめ

osモジュールは、OSに依存しているさまざまな機能を利用するためのモジュールです。

主にファイルやディレクトリ操作が可能で、ファイルの一覧やpathを取得できたり、新規にファイル・ディレクトリを作成することができます。

ここでは、そんな便利なosモジュールについて、以下の内容で解説していきます。

  • os.walk()の使い方
  • os.system()の使い方
  • os.listdir()の使い方
  • os.path()の使い方
  • os.environ()の使い方
  • os.mkdir()の使い方
  • os.rename()の使い方
  • os remove()の使い方

osモジュールで使用できる主要なメソッドについてまとめていますので、ぜひ参考にしてください!

os.walk()

os.walk()は、ファイルやディレクトリの一覧を取得するためのモジュールです。引数でディレクトリ名を指定することにより、ファイルや特定の拡張子の一覧やファイルパスを取得することができます。

たとえば、ファイルの一覧を取得したい場合は以下のように記述します。

ディレクトリ構成

test/
┣ dirA
┃ ┣ a-1.txt
┃ ┣ a-2.txt
┃ ┗ dirD/
┃ ┗ d-1.txt
┃
┣ dirB/
┃ ┣ b-1.py
┃ ┗ b-2.py
┃
┗ dirC/
  ┣ c-1.txt
  ┗ c-2.txt

サンプルプログラム

import os
 
for curDir, dirs, files in os.walk("test"):
    for f in files:
        print(os.path.join(curDir, f))

実行結果:

b-2.py
b-1.py
c-1.txt
c-2.txt
a-2.txt
a-1.txt
d-1.txt

os.walk()の詳しい使い方については、以下の記事で詳しく解説しています!

os.system()

os.system()はUnixのコマンドをPythonで記述するためのモジュールです。たとえば、Unixコマンドでファイルの一覧を取得するlsコマンドを実行する場合は以下のように記述します。

import os
 
os.system("ls")

このように引数にコマンドを指定すれば、Unixコマンド同様の結果が得られます。

os.system()については以下の記事で詳しく解説しています!

os.listdir()

os.listdir()はファイルやディレクトリの一覧を確認するときに使用します。たとえば、ファイルの一覧を取得したい場合は以下のように記述します。

ディレクトリ構成

└── dir
    ├── sample1.txt
    ├── sample2.txt
    ├── sample3.txt
    ├── subdir1
    └── subdir2

サンプルプログラム

import os
 
path = './dir'
 
flist = os.listdir(path)
print(flist)

実行結果:

['subdir2', 'Untitled.ipynb', 'test2.csv', 'subdir1', 'test1.csv', '.ipynb_checkpoints', 'sample1.txt', 'sample2.txt', 'sample3.txt']

os.listdir()については以下の記事で詳しく解説しています!

os.path()

os.path()モジュールは、「ファイルやディレクトリの存在確認」、「指定したパスのファイル名の取得」、「パスやファイル名の結合」などの用途で使用します。

以下の表はos.path()でよく使われるメソッドの一覧です。

exists()ファイル及びディレクトリの存在確認ができます。戻り値はBool型になります。
isdir()ディレクトリの存在確認ができます。戻り値はBool。
isfile()ファイルの存在確認ができます。戻り値はBool。
basename()指定されたパスのファイル名を返します。
dirname()指定されたパスからファイル名を除いたものを返します。
split()指定されたパスのファイル名と、それまでのパスを返します。
splitext()指定されたファイルの拡張子と拡張子を除くファイル名までのパスを返します。
join()パスとファイル名などを結合させる事ができます。

os.path()については以下の記事で詳しく解説しています!

os.environ()

os.environ()は環境変数を取得したり、書き込み・上書きするときに使われます。環境変数とはシステムが参照している共通の変数のことで、環境に関するデータや共通で使用するファイルのパスなどを保持するために使われています。

たとえば、Pythonで環境変数の書き込みを行うときは、以下のように記述します。

サンプルプログラム

import os
 
os.environ["PHASE"] = "staging"
 
print("env(): " + os.environ["PHASE"])

実行結果:

env(): staging

os.environ()については以下の記事で詳しく解説しています!

os.mkdir()

os.mkdir()を使用すると、簡単にディレクトリを作成することができます。たとえば、dir配下にsubディレクトリを作る場合は以下のように記述します。

サンプルプログラム

import os
 
path = './dir/sub'
 
os.mkdir(path)

os.mkdir()については以下の記事で詳しく解説しています!

os.rename()

os.rename()はファイル名を指定した名称に変更するときに使用します。

os.rename()は変更前のファイル名と変更後のファイル名を指定します。以下のサンプルでは「sample_00.txt」を「sample_01.txt」に変更しています。

サンプルプログラム

import os
 
# 変更前ファイル
path1 = './dir/sample_00.txt'
 
# 変更後ファイル
path2= './dir/sample_01.txt'
 
# ファイル名の変更
os.rename(path1, path2)
 
# ファイルの存在確認
print(os.path.exists(path2))

実行結果:

True

os rename()については以下の記事で詳しく解説しています!

os remove()

os.remove()はファイルを削除するために使用します。

削除するにはos.remove()の引数に削除したいファイル名をパスから指定します。以下のサンプルでは、「./dir/sample.txt」のファイルを削除しています。

サンプルプログラム

import os
 
path = './dir/sample.txt'
 
os.remove(path)
 
print(os.path.exists(path))

実行結果:

False

os remove()については以下の記事で詳しく解説しています!

まとめ

ここでは、OSに依存しているさまざまな機能を利用できるosモジュールについて、以下の内容を解説しました。

  • os.walk()の使い方
  • os.system()の使い方
  • os.listdir()の使い方
  • os.path()の使い方
  • os.environ()の使い方
  • os.mkdir()の使い方
  • os.rename()の使い方
  • os remove()の使い方


osモジュールはファイルやディレクトリの操作でよく使われますので、使い方についてはしっかりと理解しておきましょう!

LINEで送る
Pocket

「プログラミング、右も左もわからない…」という方にオススメ

当プログラミングスクール「侍エンジニア塾」では、これまで6000人以上のエンジニアを輩出してきました。

その経験を通してプログラミング学習に成功する人は、「目的目標が明確でそれに合わせた学習プランがあること」「常に相談できる人がそばにいること」「自己解決能力が身につくこと」この3つが根付いている傾向を発見しました。

侍エンジニア塾は上記3つの成功ポイントを満たすようなサービス設計に磨きをかけております。

cta_under_bnr

「自分のスタイルや目的に合わせて学習を進めたいな」とお考えの方は、ぜひチェックしてみてください。

書いた人

侍テック編集部

侍テック編集部

侍エンジニア塾は「人生を変えるプログラミング学習」をコンセンプトに、過去多くのフリーランスエンジニアを輩出したプログラミングスクールです。侍テック編集部では技術系コンテンツを中心に有用な情報を発信していきます。
サービスページはこちら
ツイッターはこちら
フェイスブックはこちら

おすすめコンテンツ

いまならレッスン期間が2週間延長!この秋、プログラミングを学ぼう

転職成功で受講料0円!あなたもプログラミングを学んでエンジニアデビュー