os.path.isfile(パス名)[1]
引数で指定したパスが実在するファイルかどうかを判別する関数。
実在しファイルであればTrueを返す。
ファイルが存在しない場合に新規作成をする
ファイルの存在と中身を確認する
【ターミナル操作】ファイルと中身の確認
~ $ ls
test.py names.txt
~ $ cat names.txt
Hakase
~ $
ファイルが存在しない場合に新規作成、既に存在している場合はメッセージの表示
test.py ファイルが既に存在している場合
# osモジュールのインポート
import os
file_name = "names.txt"
# 『os.path.isfile(file_name)』引数で指定したパスが実在するファイルかどうかを判別する。
# ファイルが実在する場合Trueを返す。
# if not もしファイルが存在しないとき、ファイルを新規作成する。
if not os.path.isfile(file_name):
# mode="x" ファイルの新規作成
with open(file_name, mode="x") as f:
# Shinonomeと書き込む。\nは改行するという意味。
f.write("Shinonome\n")
# ファイルが存在する場合「既にファイルは存在していますよ!!!」と表示。
else:
print("既にファイルは存在していますよ!!")
コードを実行してファイルが上書きされていないかを確認する
ファイルが既に存在するためメッセージが表示される。
names.txtの中身は変わっていない。
【ターミナル操作】 実行
~ $ python test.py
既にファイルは存在していますよ!!
~ $ cat names.txt
Hakase
~ $
存在しないファイル名に変えてみる
test.py ファイルが存在しない場合
import os
# 存在しないファイル名に変えてみたよ
file_name = "names_1.txt"
if not os.path.isfile(file_name):
with open(file_name, mode="x") as f:
f.write("shinonome\n")
else:
print("既にファイルは存在していますよ!!")
新しいファイルが新規作成されている。
【ターミナル操作】 実行・ファイルの確認
~ $ python test.py
~ $ ls
test.py names.txt names_1.txt
~ $ cat names_1.txt
shinonome
~ $