icon
icon

Pythonにおけるpathlibモジュールの利用方法を現役エンジニアが解説【初心者向け】

初心者向けにPythonにおけるpathlibモジュールの利用方法について現役エンジニアが解説しています。pathlibモジュールとはPython3.4から追加された、ファイルやフォルダのパスをオブジェクトとして操作するためのモジュールです。Pythonでファイルを作成したり書き込んだりすることが出来ます。

テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日  調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名  調査手法:インターネット調査

Pythonにおけるpathlibモジュールの利用方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して、初心者向けに解説します。

Pythonについてそもそもよく分からないという方は、Pythonとは何なのか解説した記事を読むとさらに理解が深まります。

 

なお本記事は、TechAcademyのオンラインブートキャンプ、Python講座の内容をもとに紹介しています。

 

田島悠介

今回は、Pythonに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

Pythonにおけるpathlibモジュールの利用方法について詳しく説明していくね!

大石ゆかり

お願いします!

この記事ではpathlibモジュールの利用方法について解説します。

pathlibモジュールとは?

pathlibモジュールとはPython3.4から追加されたモジュールでファイルやフォルダのパスをオブジェクトとして操作するためのモジュールです。ファイルの新規作成や読み込み、書き込み、削除などを行うことができます。

pathlibモジュールの使い方

pathlibモジュールはPython3.4以降に標準ライブラリに追加されたためインストールなどしなくても使用することができます。使用するときはimportする必要があります。

import pathlib

importすることでpathlibライブラリの機能を使うことができ、ファイルやディレクトリの操作、書き込み、読み込みなどを行うことができます。

[PR] Pythonで挫折しない学習方法を動画で公開中

pathlibモジュールを利用してファイル操作してみよう

それではpathlibモジュールを利用してファイルを操作する方法について見ていきましょう。

1.空ファイルを作成する

Pathオブジェクトの作成方法は以下の通りです。

変数 = pathlib.Path(ファイル名)

作成されたPathオブジェクトにおいてファイルが存在しているのかを確認するにはexits()を使います。

変数.exits()

ファイルが存在していない場合はFalse、存在する場合はTrueが戻ってきます。空のファイルを作成するにはPathオブジェクトの中にあるtouch()を使います。使い方は以下のように使います。

変数.touch(引数)

引数にexist_ok=Falseと書くと既に存在している場合はエラーとなります。では空のファイルを作成するサンプルソースを見てみましょう

プログラムソースコード

import pathlib
file = pathlib.Path('C:/PycharmProjects/Sample/text.txt')

if file.exists():
  print('存在している')
else:
  print('存在していない')

file.touch()

if file.exists():
  print('存在している')
else:
  print('存在していない')

 

実行結果

存在していない
存在している

存在していない状況からtouch()をすることで自動的に空ファイルを作成することができました。

注意点は空ファイルを作る親ディレクトリが存在しない場合はエラーとなるのでファイルを作成する際は事前に親ディレクトリを作成するように注意しましょう。

2.ファイルを開く

ファイルを開くときはPathオブジェクトのopen()を使います。使い方は以下のように使用します。

変数.open(mode)

引数のmodeはデフォルトが’r’で読み込み専用となる。書き込みなどを行うときは’w’としましょう。ではファイルを開いて読み込むプログラムを見てみましょう。

プログラムソースコード

import pathlib
file = pathlib.Path('C:/PycharmProjects/Sample/text.txt')

with file.open(mode='r') as f:
    print(f.read())

実行結果はそれぞれの環境によりますがファイルの内容が表示されれば成功です。

3.ファイルへの書き込み

ファイルに書き込むときは以下のように記述します

変数.write_text(書き込みたい内容)

write_text()は追記ではなく上書きなのでファイルのこれまでの内容がすべて上書きされることに注意しましょう。では書き込みのプログラムを見てみましょう。

プログラムソースコード

import pathlib
file = pathlib.Path('C:/PycharmProjects/Sample/text.txt')

file.write_text('Hello')

print(file.read_text())

 

実行結果

Hello

 

監修してくれたメンター

メンターSさん

システムエンジニアとしてこれまで行政システムや医療用システムの保守、開発に携わりました。

JavaやPython、PHP、Kotlinなど様々な言語での開発経験があります。TechAcademyではJavaコース、Pythonコース、AIコースなど7コースを担当しています。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

TechAcademyでは、初心者でも、Pythonを使った人工知能(AI)や機械学習の基礎を習得できる、オンラインブートキャンプを開催しています。

また、現役エンジニアから学べる無料体験も実施しているので、ぜひ参加してみてください。

初心者・未経験でもできる。まずはテックアカデミーに相談しよう

プログラミングを独学で学習していて、このように感じた経験はないでしょうか?

  • ・調べてもほしい情報が見つからない
  • ・独学のスキルが実際の業務で通用するのか不安
  • ・目標への学習プランがわからず、迷子になりそう

テックアカデミーでは、このような 学習に不安を抱えている方へ、マンツーマンで相談できる機会を無料で提供 しています。
30分間、オンラインでどんなことでも質問し放題です。

「受けてよかった」と感じていただけるよう カウンセラーやエンジニア・デザイナー があなたの相談に真摯に向き合います。

「自分に合っているか診断してほしい」
「漠然としているが話を聞いてみたい」

こんなささいな悩みでも大丈夫です。

無理な勧誘は一切ありません ので、まずはお気軽にご参加ください。
※体験用のカリキュラムも無料で配布いたします。(1週間限定)

今なら参加者限定の割引特典付き! 無料相談を予約する