atwiki-logo
  • 新規作成
    • 新規ページ作成
    • 新規ページ作成(その他)
      • このページをコピーして新規ページ作成
      • このウィキ内の別ページをコピーして新規ページ作成
      • このページの子ページを作成
    • 新規ウィキ作成
  • 編集
    • ページ編集
    • ページ編集(簡易版)
    • ページ名変更
    • メニュー非表示でページ編集
    • ページの閲覧/編集権限変更
    • ページの編集モード変更
    • このページにファイルをアップロード
    • メニューを編集
    • 右メニューを編集
  • バージョン管理
    • 最新版変更点(差分)
    • 編集履歴(バックアップ)
    • アップロードファイル履歴
    • このページの操作履歴
    • このウィキのページ操作履歴
  • ページ一覧
    • ページ一覧
    • このウィキのタグ一覧
    • このウィキのタグ(更新順)
    • このページの全コメント一覧
    • このウィキの全コメント一覧
    • おまかせページ移動
  • RSS
    • このウィキの更新情報RSS
    • このウィキ新着ページRSS
  • ヘルプ
    • ご利用ガイド
    • Wiki初心者向けガイド(基本操作)
    • このウィキの管理者に連絡
    • 運営会社に連絡(不具合、障害など)
ページ検索 メニュー
Intro to Python
  • 広告なしオファー
  • ウィキ募集バナー
  • 目安箱バナー
  • 操作ガイド
  • 新規作成
  • 編集する
  • 全ページ一覧
  • 登録/ログイン
広告非表示(β版)
ページ一覧
Intro to Python
  • 広告なしオファー
  • ウィキ募集バナー
  • 目安箱バナー
  • 操作ガイド
  • 新規作成
  • 編集する
  • 全ページ一覧
  • 登録/ログイン
ページ一覧
Intro to Python
広告非表示 広告非表示(β)版 ページ検索 ページ検索 メニュー メニュー
  • 新規作成
  • 編集する
  • 登録/ログイン
  • 管理メニュー
管理メニュー
  • 新規作成
    • 新規ページ作成
    • 新規ページ作成(その他)
      • このページをコピーして新規ページ作成
      • このウィキ内の別ページをコピーして新規ページ作成
      • このページの子ページを作成
    • 新規ウィキ作成
  • 編集
    • ページ編集
    • ページ編集(簡易版)
    • ページ名変更
    • メニュー非表示でページ編集
    • ページの閲覧/編集権限変更
    • ページの編集モード変更
    • このページにファイルをアップロード
    • メニューを編集
    • 右メニューを編集
  • バージョン管理
    • 最新版変更点(差分)
    • 編集履歴(バックアップ)
    • アップロードファイル履歴
    • このページの操作履歴
    • このウィキのページ操作履歴
  • ページ一覧
    • このウィキの全ページ一覧
    • このウィキのタグ一覧
    • このウィキのタグ一覧(更新順)
    • このページの全コメント一覧
    • このウィキの全コメント一覧
    • おまかせページ移動
  • RSS
    • このwikiの更新情報RSS
    • このwikiの新着ページRSS
  • ヘルプ
    • ご利用ガイド
    • Wiki初心者向けガイド(基本操作)
    • このウィキの管理者に連絡
    • 運営会社に連絡する(不具合、障害など)
  • atwiki
  • Intro to Python
  • ファイル・ディレクトリの操作

Intro to Python

ファイル・ディレクトリの操作

最終更新:2025年03月10日 23:44

introtopython

- view
管理者のみ編集可

目次

  • 目次
  • ファイルやディレクトリの存在を確認する
  • ファイルかディレクトリかを判定する
  • ファイルやディレクトリのパスを連結する

ファイルやディレクトリの存在を確認する

os.pathモジュールのexists関数を使う。exists関数はファイルかディレクトリかを判別することできないことに注意。ファイルとディレクトリを判別するには、isfile関数かisdir関数を使う。

>>> import os
>>> os.path.exists("C:\\Windows")
True
>>> os.path.exists("C:\\macOS")
False
>>> os.path.exists("C:\\Windows\\win.ini")
True
>>> os.path.exists("C:\\Windows\\macOS.ini")
False
>>> os.path.isfile("C:\\Windows")
False
>>> os.path.isdir("C:\\Windows")
True
>>> os.path.isfile("C:\\Windows\\win.ini")
True
>>> os.path.isdir("C:\\Windows\\win.ini")
False
>>> os.path.isfile("C:\\Windows\\macOS.ini")
False
>>> os.path.isdir("C:\\Windows\\macOS.ini")
False

ファイルかディレクトリかを判定する

os.pathモジュールのisfile関数かisdir関数を使う。存在しないファイルやディレクトリを指定した場合は、例外が発生したりはせず単純にFalseが返される。

>>> import os
>>> os.path.isfile("C:\\Windows")
False
>>> os.path.isdir("C:\\Windows")
True
>>> os.path.isfile("C:\\Windows\\win.ini")
True
>>> os.path.isdir("C:\\Windows\\win.ini")
False
>>> os.path.isdir("C:\\macOS")
False
>>> os.path.isdir("C:\\Windows\\macOS.ini")
False

ファイルやディレクトリのパスを連結する

osモジュールのpath.join関数を使う。以下は、自動的に削除される一時ディレクトリを利用して、temp1.txtとtemp2.txtという2つのファイルについてパスを連結して出力と読み込み行った例。文字コードはUTF-8にしてpathjoin.pyと保存する。一方はpath.join関数を使って連結し、もう一方は+演算子を使用して手動で文字列として連結して行っている。いずれも問題なく読み書きできることが分かる。

ソースコード

# coding=utf_8
import os
import tempfile
with tempfile.TemporaryDirectory() as tempd:
    with open(os.path.join(tempd, 'temp1.txt'), 'w+t') as f1:
        with open(tempd + os.path.sep + 'temp2.txt', 'w+t') as f2:
            print('[一時ファイル1と2の作成]')
            print(f1.name)
            print(f2.name)
            print('[一時ファイル1への書き出し]')
            f1.write('スノウブレイクのリフ-ムゲン知眼役の瀬戸麻紗美さん')
            f1.write('かわいい')
            print('[一時ファイル2への書き出し]')
            f2.write('マクロスΔのフレイア役の鈴木みのりさん')
            f2.write('かわいい')
            f1.seek(0)
            f2.seek(0)
            print('[一時ファイル1と2からの読み込み]')
            print(f1.read())
            print(f2.read())

実行結果

(base) >python pathjoin.py
[一時ファイル1と2の作成]
C:\Users\○○○\AppData\Local\Temp\○○○\temp1.txt
C:\Users\○○○\AppData\Local\Temp\○○○\temp2.txt
[一時ファイル1への書き出し]
[一時ファイル2への書き出し]
[一時ファイル1と2からの読み込み]
スノウブレイクのリフ-ムゲン知眼役の瀬戸麻紗美さんかわいい
マクロスΔのフレイア役の鈴木みのりさんかわいい
「ファイル・ディレクトリの操作」をウィキ内検索
LINE
シェア
Tweet
Intro to Python
記事メニュー

メニュー

  • トップページ
  • 画面出力と入力
  • 変数とオブジェクト
  • 演算子と制御構文
  • リスト
  • 数と式
  • 文字と文字列
  • 正規表現
  • 行列
  • 日付と時刻
  • ファイル・ディレクトリの操作
  • テキストファイルの入出力
  • 画像
  • 実行とデバッグ
  • 数学
  • NumPy
  • エラーメッセージ
  • 環境
  • テキストマイニング
  • インターネット
  • Anaconda
  • その他

ここを編集
記事メニュー2

更新履歴

取得中です。


ここを編集
人気記事ランキング
  1. 文字と文字列
  2. エラーメッセージ
  3. その他
  4. 画像
  5. リスト
  6. 変数とオブジェクト
  7. 実行とデバッグ
  8. 正規表現
  9. テキストファイルの入出力
  10. プラグイン/ニュース
もっと見る
最近更新されたページ
  • 166日前

    リスト
  • 173日前

    正規表現
  • 202日前

    メニュー
  • 205日前

    インターネット
  • 205日前

    画像
  • 220日前

    演算子と制御構文
  • 220日前

    変数とオブジェクト
  • 231日前

    Anaconda
  • 232日前

    ファイル・ディレクトリの操作
  • 232日前

    テキストファイルの入出力
もっと見る
人気記事ランキング
  1. 文字と文字列
  2. エラーメッセージ
  3. その他
  4. 画像
  5. リスト
  6. 変数とオブジェクト
  7. 実行とデバッグ
  8. 正規表現
  9. テキストファイルの入出力
  10. プラグイン/ニュース
もっと見る
最近更新されたページ
  • 166日前

    リスト
  • 173日前

    正規表現
  • 202日前

    メニュー
  • 205日前

    インターネット
  • 205日前

    画像
  • 220日前

    演算子と制御構文
  • 220日前

    変数とオブジェクト
  • 231日前

    Anaconda
  • 232日前

    ファイル・ディレクトリの操作
  • 232日前

    テキストファイルの入出力
もっと見る
ウィキ募集バナー
急上昇Wikiランキング

急上昇中のWikiランキングです。今注目を集めている話題をチェックしてみよう!

  1. PC版Webサカ@ ウィキ
  2. グノーシア台詞集 @ ウィキ
  3. NIKKEぺでぃあ
  4. 山陽地区の国鉄型電車
  5. Memena's Lord Arena浅瀬wiki
  6. Abiotic Factor 日本語攻略Wiki
  7. Last Z: Survival Shooter @ ウィキ
  8. 魔法科高校の劣等生Wiki
  9. アサルトリリィ wiki
  10. 番組スポンサー 詳しく! @ ウィキ
もっと見る
人気Wikiランキング

atwikiでよく見られているWikiのランキングです。新しい情報を発見してみよう!

  1. アニヲタWiki(仮)
  2. MADTOWNGTAまとめwiki
  3. ゲームカタログ@Wiki ~名作からクソゲーまで~
  4. 初音ミク Wiki
  5. ストグラ まとめ @ウィキ
  6. 検索してはいけない言葉 @ ウィキ
  7. 鬼レンチャンWiki
  8. Grand Theft Auto V(グランドセフトオート5)GTA5 & GTAオンライン 情報・攻略wiki
  9. 機動戦士ガンダム バトルオペレーション2攻略Wiki 3rd Season
  10. 機動戦士ガンダム EXTREME VS.2 INFINITEBOOST wiki
もっと見る
新規Wikiランキング

最近作成されたWikiのアクセスランキングです。見るだけでなく加筆してみよう!

  1. MADTOWNGTAまとめwiki
  2. MadTown GTA (Beta) まとめウィキ
  3. 首都圏駅メロwiki
  4. まどドラ攻略wiki
  5. ステラソラwiki
  6. Last Z: Survival Shooter @ ウィキ
  7. シュガードール情報まとめウィキ
  8. ちいぽけ攻略
  9. ソニックレーシング クロスワールド 攻略@ ウィキ
  10. 駅のスピーカーwiki
もっと見る
全体ページランキング

最近アクセスの多かったページランキングです。話題のページを見に行こう!

  1. Pokémon LEGENDS Z-A - アニヲタWiki(仮)
  2. 参加者一覧 - MADTOWNGTAまとめwiki
  3. XVI - MADTOWNGTAまとめwiki
  4. ブラックマジシャンガールのエロ動画 - イナズマイレブンの人気投票で五条さんを一位にするwiki 五条さんおめでとう
  5. ブラック・マジシャン・ガール - アニヲタWiki(仮)
  6. 魔獣トゲイラ - バトルロイヤルR+α ファンフィクション(二次創作など)総合wiki
  7. カラスバ(ポケモン) - アニヲタWiki(仮)
  8. 真崎杏子 - 遊戯王DSNTナイトメアトラバドール攻略Wiki@わかな
  9. ゲームシステムを利用した演出 - アニヲタWiki(仮)
  10. 朝まで生テレビ! (BS朝日) - テレビ番組スポンサー表 @ wiki
もっと見る

  • このWikiのTOPへ
  • 全ページ一覧
  • アットウィキTOP
  • 利用規約
  • プライバシーポリシー

2019 AtWiki, Inc.