Pythonでファイル操作
書きかけだけど公開しておく。
まずは
import
import shutil from pathlib import Path
とりあえずこの2つがあればOK
Pathのよく使うやつ
# --- 基本 ---
# 文字列からPath作成
dir_path = ("/home/hoge")
# パス結合は/演算子で
path = dir_path / "fuga.txt"
# 相対パスでも指定可能だけど
path = Path("hoge/huga.txt")
# resolveで絶対パスにしておいたほうが無難な気がする
path = path.resolve()
# --- 取得系 ---
# カレントディレクトリ
cur = path.cwd()
# この.pyファイルのあるpath
path = Path(__file__)
# 親ディレクトリ、ファイル名だけ、 拡張子だけ、拡張子なしファイル名だけ
path = Path("/home/hoge/fuga.txt")
par = path.parent # Path("/home/hoge")
pa2 = path.parents[1] # Path("/home")
file = path.name # "fuga.txt"
ext = path.suffix # "txt"
body = path.stem # "huga"
# パスの要素
parts_list = path.parts # ["/", "home", "hoge", "fuga.txt"]
# ディレクトリ直下のやつ全部 (ジェネレータが返る)
all_file = path.iterdir()
# .txtファイルだけとかならこう(多分直下だけじゃなく孫ひ孫も含む)
all_txt = dir_path.glob("*.txt")
# --- 確認系 ---
# ファイルかディレクトリかあるかないか
if path.is_dir():
# ディレクトリのときの処理
elif path.is_file():
# ファイルのときの処理
elif not path.exists():
# 存在しないときの処理
# --- 生成・削除 ---
# ディレクトリやファイル作る。引数は親も一緒に作るか、すでにあってもエラー出さなくていいか
path.mkdir(parent=True, exists_ok=True)
path.touch()
# ディレクトリやファイル消す
path.rmdir() #中身あったら消せない
path.unlink()
path指定いろいろ
# このファイルのディレクトリ path = Path(__file__).parent
コピー ファイル→ファイル
# ファイル名指定してコピー shutil.copy(src_file, dst_file) # ファイル名そのまま別ディレクトリにコピー shutil.copy(src_file, dst_dir)





ディスカッション
コメント一覧
まだ、コメントがありません