【Python】ファイル・フォルダ・パスの操作・処理

Pythonを用いて、ファイルを操作したり処理する方法について紹介します。

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

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

# -*- coding:utf-8 -*-
import os

cd_path = os.getcwd()

print(cd_path) # C:progpython
【Python】カレントディレクトリ(現在のフォルダ)のパスを取得
Pythonのosモジュールでカレントディレクトリ(現在のフォルダ)のパスを取得する方法をソースコード付きでまとめました。

■パスの有無

import os

# ファイルパス
path = "D:/img/gochiusa"

# ファイルパスが存在するかどうかの判定
if os.path.exists(path):
    print("ファイルパスが存在します")
else:
    print("ファイルパスが存在しません")
【Python】ファイル・フォルダ(ディレクトリ)が存在するか判定
この記事では、Python言語で指定したファイル・フォルダ(ディレクトリ)が存在するかの判定方法をソースコード付きで解説します。

■パスがファイルか判定

# -*- coding: utf-8 -*-
import os

# パス
path = "D:/img/gochiusa"

# ファイルパスが存在するかどうかの判定
if os.path.isfile(path):
    print("パスはファイルです。")
else:
    print("パスはファイルでないです。")
【Python】パスがディレクトリ(フォルダ)か判定
この記事では、Python言語で指定しパスがディレクトリ(フォルダ)かどうか判定する方法をソースコード付きで解説します。

■パスがディレクトリか判定

# -*- coding: utf-8 -*-
import os

# パス
path = "D:/img/gochiusa"

# パスがディレクトリか判定
if os.path.isdir(path):
    print("パスはディレクトリです。")
else:
    print("パスはディレクトリでないです。")

■指定した拡張子のファイル名を取得(相対パスあり)

# -*- coding: utf-8 -*-
import glob

path = 'sample/*.py'

# sampleフォルダ内にあって拡張子がpyのファイル名を取得
file_list = glob.glob(path, recursive=True)

print(file_list) # ['sample\file1.py']
【Python】パスがファイルか判定
この記事では、Python言語で指定しパスがファイルかどうか判定する方法をソースコード付きで解説します。

■指定した拡張子のファイル名を取得(相対パスなし)

# -*- coding: utf-8 -*-
import glob, os

path = 'sample/*.py'

# sampleフォルダ内にあって拡張子がpyのファイル名を取得
file_list = glob.glob(path, recursive=True)

# ファイル名だけを抽出
file_list = [os.path.basename(r) for r in file_list]

print(file_list) # ['file1.py']
【Python】指定した拡張子のファイルを一覧で取得
Pythonで指定した拡張子のファイルを一覧で取得する方法について入門者向けにまとめました。

■パス内の全てのファイル・フォルダ名を取得(相対パスあり)

# -*- coding: utf-8 -*-
import glob

path = 'sample/*'

# パス内の全てのファイル・フォルダ名を取得
file_list = glob.glob(path)

print(file_list) # ['sample\dir1', 'sample\dir2', 'sample\file1.py', 'sample\file2.jpg', 'sample\file3.xlsx']
【Python】ファイル名・フォルダ名を一覧で取得
Pythonで「ファイル名」「フォルダ名(ディレクトリ名)」を一覧で取得する方法について入門者向けにまとめました。

■パス内の全てのファイル・フォルダ名を取得(相対パスなし)

# -*- coding: utf-8 -*-
import glob, os

path = 'sample/*'

# パス内の全てのファイル・フォルダ名を取得
file_list = glob.glob(path)

# ファイル名だけを抽出
file_list = [os.path.basename(r) for r in file_list]

print(file_list) # ['dir1', 'dir2', 'file1.py', 'file2.jpg', 'file3.xlsx']
【Python/chardet】ファイルの文字コードを確認
Pythonパッケージ「chardet」でファイルの文字コードを確認する方法についてまとめました。

【ファイル情報】拡張子

■ファイルの拡張子取得

# -*- coding: utf-8 -*-
import os.path

# ファイル名
filename = "heroinex.jpg"

# ファイル名と拡張子
fn, ext = os.path.splitext(filename)

# 結果表示
print("ファイル名:", fn) # ファイル名:heroinex
print("拡張子:", ext) # 拡張子:jpg
【Python】ファイル名から拡張子の取得
この記事では、Python言語でファイル名から拡張子を取り出す方法をソースコード付きで解説します。

■ファイル・フォルダ名を一覧取得

# -*- coding: utf-8 -*-
import glob

path = 'sample/*'

# パス内の全てのファイル・フォルダ名を取得
file_list = glob.glob(path)

print(file_list) # ['sample\dir1', 'sample\dir2', 'sample\file1.py', 'sample\file2.jpg', 'sample\file3.xlsx']
【Python/chardet】ファイルの文字コードを確認
Pythonパッケージ「chardet」でファイルの文字コードを確認する方法についてまとめました。
# -*- coding: utf-8 -*-
import glob, os

path = 'sample/*'

# パス内の全てのファイル・フォルダ名を取得
file_list = glob.glob(path)

# ファイル名だけを抽出
file_list = [os.path.basename(r) for r in file_list]

print(file_list) # ['dir1', 'dir2', 'file1.py', 'file2.jpg', 'file3.xlsx']

■ファイルの文字コード判別

pip install chardet
# -*- coding: utf-8 -*-
import chardet

with open("test.txt", "rb") as f:
  char_code = chardet.detect(f.read())

print(char_code) #{'encoding': 'utf-8', 'confidence': '', 'language': ''}

■ディレクトリの一括削除

# -*- coding:utf-8 -*-
import shutil

shutil.rmtree('dir1')
【Python】ファイル・フォルダの一斉削除
Pythonでファイル・フォルダの一斉削除する方法についてまとめました。
【Python】globモジュールで指定条件を満たすファイル・パスを取得
Pythonを用いて、globモジュールで指定条件を満たすファイル・パスを取得する方法について紹介します。
【Python】ディレクトリ・フォルダの操作
Pythonでディレクトリ・フォルダを操作方法について入門者向けにまとめました。
【Python】複数のファイルに対してキーワード検索
Pythonで複数のファイルに対してキーワード検索する方法について紹介します。

【応用例】

項目 概要
ZIPファイル ZIPファイルの解凍や圧縮を行います。
PDF⇔画像 PDFファイルと画像ファイルを相互に変換します。
PDF結合 複数のPDFを結合します。
暗号・復号 ファイルの暗号化と復号化を行います。
パワーポイント python-pptx等でパワーポイントの作成や編集を行います。

コメント