はじめてのPython!カレントディレクトリを確認・移動・一覧取得

Pythonではディレクトリやファイルを操作するためのosモジュールが用意されています。

とくにプログラムが実行しているディレクトリ(カレントディレクトリ)からさまざまな操作をする頻度は高いと言えます。

「現在のカレントディレクトリを知りたい」
「カレントディレクトリを変更したい」
「カレントディレクトリのファイル一覧を取得したい」

そこで、今回はカレントディレクトリの操作方法を中心に以下の内容で解説していきます。


・そもそもカレントディレクトリとは
・カレントディレクトリのパスを取得する方法
・カレントディレクトリを変更する方法
・カレントディレクトリのファイル一覧を取得する方法

そもそもカレントディレクトリとは

カレントディレクトリとは、ユーザーが作業を行っているディレクトリ(フォルダ)のことを指します。

Pythonのプログラムが実行している場合は実行しているディレクトリがカレントディレクトリとなります。

プログラムの操作として、「今いるカレントディレクトリのパスを取得」、「カレントディレクトリの変更」、「カレントディレクトリに存在するファイルの一覧を取得」するなどの処理はよく行われています。

Pythonではディレクトリ・ファイル関連の操作はosモジュールを使用して行われます。

osモジュールを使用するにはプログラムの先頭行で以下のようにosモジュールをインポートしておきます。

import os

次項ではカレントディレクトリからのさまざまな操作方法について解説していきます!

カレントディレクトリのパスを取得

getcwd()を使用する方法

Pythonのプログラムが実行されている場所を絶対パスを取得したい場合は、osモジュールのgetcwd()を使用すると簡単に取得することができます。

import os

currentdir = os.getcwd()

print(currentdir)

実行結果:

/Users/samurai/Python/os

このようにカレントディレクトリの絶対パスを文字列で簡単に取得できます。

abspath()を使用する方法

os.abspath()を使用することでもカレントディレクトリのパスを取得することができます。

abspath()を使用する場合は引数に現在のディレクトリを相対パスで示す「”.”」を指定する必要があります。

import os

currentdir = os.path.abspath(".")

print(currentdir)

実行結果:

/Users/samurai/Python/os

os.getcwd()同様に絶対パスを取得することができました。

カレントディレクトリの変更

カレントディレクトリを変更する場合はos.chdir()を使用します。

os.chdir()は引数に変更するパスを指定することで、Linuxのcdコマンドのようにカレントディレクトリが変更されます。

以下ではカレントディレクトリ直下のsubディレクトリに移動しています。

import os

os.chdir("sub")

currentdir = os.getcwd()

print(currentdir)

実行結果:

/Users/samurai/Python/os/sub

このように簡単にカレントディレクトリを変更することができました!

カレントディレクトリのファイル一覧を取得

カレントディレクトリのファイル一覧を取得するにはos.listdir()を使用します。

os.litdir()は引数に一覧で取得したいディレクトリのパスを取得します。

以下のプログラムでは、os.getcwd()でカレントディレクトリを取得したあとに、os.listdir()の引数にカレントディレクトリが格納された変数を指定しています。

import os

currentdir = os.getcwd()

print(currentdir)

ls = os.listdir(currentdir)

print(ls)

実行結果:

/Users/samurai/Python
['kikai_01.ipynb', 'start.csv', 'kiso.ipynb', 'lang.txt', 'module', 'csv_sample.py', 'file_del', '1', '__pycache__', 'sub', 'dir', 'numpy_test1.ipynb', 'sample', 'os', '.ipynb_checkpoints', 'sample.txt']

まとめ

ここではosモジュールでカレントディレクトリを操作する方法について以下の内容を解説しました。

  • そもそもカレントディレクトリとは
  • カレントディレクトリのパスを取得する方法
  • カレントディレクトリを変更する方法
  • カレントディレクトリのファイル一覧を取得する方法

カレントディレクトリの操作は方法さえ理解すればとても簡単ですので、使い方についてはしっかりと理解しておきましょう。

もし、カレントディレクトリの操作方法を忘れてしまったら、この記事を思い出してくださいね!

LINEで送る
Pocket

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

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

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

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

cta_under_bnr

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

書いた人

ヤマシタ

システムエンジニアとして10年勤務→フリーランスへ。現在は侍ブログ編集部としてこれまでに200記事以上の記事を執筆。
大規模システム開発からWebアプリ開発まで経験あり。最近ではPythonの機械学習に挑戦中。