Pythonでは、ファイルやディレクトリを操作することができます。
やすひら
Pythonのファイル/ディレクトリ操作を紹介します
この記事でわかること
- Pythonのファイル操作
- Pythonのディレクトリ操作
目次
Pythonのファイル操作
Pythonではファイルの読み書きを行うことができます。
open関数でファイルを開き、ファイルを操作します。
ファイルの操作内容に応じて、モードを指定してファイルを開く必要があります。
モード | 意味 |
---|---|
r | 読み込みモード |
w | 書き込みモード |
a | 追記モード |
ファイル読み込み
ファイル読み込みを紹介します。
ソースコード
# ファイルを読み込みモードで開く
with open('hogehoge.txt', 'r') as file:
content = file.read()
print(content)
コマンド実行例
$ cat hogehoge.txt
hogehoge
hogehoge
hogehoge
$ python3 -B python-file-read.py
hogehoge
hogehoge
hogehoge
ファイル読み込み(1行単位)
1行単位でファイル読み込みを紹介します。
ソースコード
# ファイルを読み込みモードで開く
with open('hogehoge.txt', 'r') as file:
for line in file:
print(line.strip())
コマンド実行例
$ cat hogehoge.txt
hogehoge
hogehoge
hogehoge
$ python3 -B python-file-read-line.py
hogehoge
hogehoge
hogehoge
ファイル書き込み
ファイル書き込みを紹介します。
ソースコード
# ファイルを書き込みモードで開く
with open('hogehoge.txt', 'w') as file:
file.write('Hello, world!')
コマンド実行例
$ python3 -B python-file-write.py
$ cat hogehoge.txt
Hello, world!
ファイル書き込み(追記)
追記モードのファイル書き込みを紹介します。
ソースコード
# ファイルを追記モードで開く
with open('hogehoge.txt', 'a') as file:
file.write('\nAppend this line.')
コマンド実行例
$ cat hogehoge.txt
Hello, world!
$ python3 -B python-file-write-add.py
$ cat hogehoge.txt
Hello, world!
Append this line.
Pythonのディレクトリ操作
Pythonではディレクトリの操作を行うことができます。
ディレクトリ作成
ディレクトリを作成します。
ソースコード
import os
from pathlib import Path
# osモジュールを使ってディレクトリを作成
os.mkdir('hogehoge1')
# pathlibモジュールを使ってディレクトリを作成
Path('hogehoge2').mkdir()
コマンド実行例
$ python3 -B python-directory-make.py
$ ls
hogehoge1 hogehoge2
ディレクトリ一覧を取得
ディレクトリの一覧を取得します。
ソースコード
import os
from pathlib import Path
# osモジュールを使ってディレクトリの内容を取得
print(os.listdir('hogehoge'))
# pathlibモジュールを使ってディレクトリの内容を取得
for item in Path('hogehoge').iterdir():
print(item)
コマンド実行例
$ touch hogehoge/hogehoge.txt
$ python3 -B python-directory-list.py
['hogehoge.txt']
hogehoge/hogehoge.txt
Pythonのファイル/ディレクトリ操作
Pythonではファイル/ディレクトリを操作を行うことができます。
ファイル/ディレクトリの削除
ファイル/ディレクトリを削除します。
ソースコード
import os
import shutil
from pathlib import Path
# ファイルを削除
os.remove('hogehoge.txt')
# ディレクトリを削除
os.rmdir('hogehoge1')
# ディレクトリを削除
shutil.rmtree('hogehoge2')
# ディレクトリを削除
Path('hogehoge3').rmdir()
コマンド実行例
$ touch hogehoge.txt
$ mkdir hogehoge1
$ mkdir hogehoge2
$ mkdir hogehoge3
$ python3 -B python-file-directory-delete.py
$ ls
パスの操作
ファイル/ディレクトリのパスを操作します。
ソースコード
import os
from pathlib import Path
# os.pathモジュールを使ってパスを操作
path = os.path.join('hogehoge', 'hogehoge.txt')
print(os.path.abspath(path))
# pathlibモジュールを使ってパスを操作
path = Path('hogehoge') / 'hogehoge.txt'
print(path.resolve())
コマンド実行例
$ python3 -B python-file-directory-path.py
/home/user/hogehoge/hogehoge.txt
/home/user/hogehoge/hogehoge.txt
まとめ
Pythonのファイル/ディレクトリの操作を紹介しました。
Pythonのファイル操作は
- ファイル読み込みができる
- ファイル読み込み(1行)ができる
- ファイル書き込みができる
- ファイル書き込み(追記)ができる
- ファイル削除できる
- パスを操作できる
Pythonのディレクトリ操作は
- ディレクトリ作成できる
- ディレクトリ一覧を取得できる
- ディレクトリ削除できる
- パスを操作できる
ファイル/ディレクトリの操作は、頻繁に使用する操作です。
本操作を習得して、システムを構築しやすくしましょう。