typememo.jp

Python ファイル処理の基本

2019.12.09

#tech#python

Contents


はじめに

独学プログラマー 第9章のファイル処理の自分用メモです。

継続してアウトプットするためのメモなので、間違いなどがあるかもしれません。

その点、ご了承くださいませ。

ファイルパス取得 => os モジュール

ファイルパスを取得するなら os モジュールを使うべし。

手入力だと、OS の環境が異なるとファイルパスの書き方が異なるため。

この os モジュールの使い方には感動した。初めてみたので。

os.path.join()
# for example
os.path.join("Users", "bob", "st.txt")
>> '/Users/bod/st.txt'

ファイル書き出し

ファイル書き出しの手順は、

  • open()
  • write()
  • close()

である。

file = open("Path/to/File", "w", encoding = "utf-8")
file.write("Something you want to write")
file.close()
# もしくは with 文を使うと close() が省略できる。
with open("Path/to/File", "w", encoding = "utf-8") as file
file.write("Something you want to write")

ファイル読み込み

ファイル読み込みの手順は、

  • open()
  • read()
  • close()

である。

file = open("Path/to/File", "w", encoding = "utf-8")
contentOfFile = file.read()
file.close()
# with 文を使うと close() を省略できる。
contentOfFile = []
with open("Path/to/File", "w", encoding = "utf-8") as file
contentOfFile.append(file.read())

csv ファイルの処理 => csv モジュール

csv (comma separated value) ファイルの取り扱いには、csv モジュールを使うと良い。

書き込みと読み込みの始まりは、

  • csv.writer()
  • csv.reader()

である。

# 書き込みの場合
with open("Path/to/File", "w", encoding = "utf-8") as file
csvWriteFile = csv.writer(file, delimeter = ",")
csvWriteFile.writerow(["a", "b", "c"])
csvWriteFile.writerow(["d", "e", "f"])
# 読み込みの場合
with open("Path/to/File", "w", encoding = "utf-8") as file
csvReadFile = csv.reader(file, delimeter = ",")
for line in csvReadFile:
print(",".join(line))

おわりに

本記事の内容はすべて、独学プログラマー に則っています。

最後までお読みいただき、ありがとうございました。


山田 武尊 / 立教大学(理学) / ACCESS CO LTD