Python
初心者
colaboratory

【Tips】Google Colaboratory でPythonのファイル入出力演習

問題

 Python初学者が最初に触れるファイル入出力のコードは「ローカル」のファイルを操作するものになることが多いが、Google Colaboratory ではその「ローカル」が Google Drive のルートのような初学者にとっての直感的位置にはなく、ある種の工夫をする必要がある。

解決方法

概要

  • 入力準備
    • files.upload()
  • 出力確認
    • files.download()

詳細

入力準備

 Colaboratoryにアップロードした.ipynbファイルは Google Drive のルート(直下の場所)に置かれるが、その場所がそのままColaboratory実行時のローカルの参照先ということには残念ながらならない。Colaboratoryのローカルにファイルを置くには別途コード上からファイルのアップロードが必要となる。ファイルアップロードには以下のコードを実行する。

upload.py
from google.colab import files
files.upload()

これを実行するとアップロードファイルの選択ボタンが出現する。あとはその選択ボタンを利用して通常のWebサイトにファイルをアップロードするのと同じ要領で上げたいファイルを選択、決定すればアップロードが完了する。アップロードされたファイルは以後のセルで利用可能となる。この状態で

input.py
with open("【入力ファイル名】", 'r') as f:
    print(f.read())

などとやればエラーなく実行できる。

出力確認

 ローカルへのファイルの出力は、通常通り

output.py
with open("【出力ファイル名】", "w") as f:
    f.write("【出力内容】")

などとすればColaboratoryのローカルに書き込まれる。正常に書き込まれたかどうかの確認は改めてreadで読み込んで表示するなどしても良いが、より直感的にファイルとして作成されたことを確認するには、ローカルに作成されたファイルをダウンロードするのが良い。

download.py
from google.colab import files
files.download("【出力ファイル名】")

上記コードをセルにして実行すればダウンロードが行われる。もちろんimport文は以前行っている場合には不要である。

参考文献