確認ですが、.pyも.ipynbもColabでは「中央にコードを表示してから実行」はできないということですね。なのでプログラム内容を中央のColabのコードセルに表示して、内容を確認・修正してから実行したい 場合は、ファイルのダブルクリックで 右サイドバーにファイルテキストを表示させ、それをコピペでColabのコードセルに表示させ実行するという説明でいいのですね。
はい、ほぼその理解でいいのですが、1点だけ訂正があります。
Contents
.py と .ipynb では違います
.py
→ Colabのファイル一覧でダブルクリックしても、通常は右側にソースが表示されるだけです。
→ 中央のコードセルに直接表示するには、コピー&ペーストする方法でOKです。
→ あるいは先ほど説明した%loadでも読み込めます。.ipynb
→ 本来はColabのノートブックそのものなので、Colabで開けば中央にコードセルが表示されます。
→.ipynbまで「必ずコピー&ペーストしなければならない」というわけではありません。
したがって、今回の説明を整理すると、こうなります。
「プログラム内容を中央のColabのコードセルに表示して、内容を確認・修正してから実行したい」場合、
.pyファイルなら、ファイルをダブルクリックして右サイドバーにソースを表示し、その内容をコピーしてColabのコードセルに貼り付けて実行する方法が分かりやすい。
そして、.ipynbの場合は、Colabでそのファイル自体を開けば、コードセルが中央に表示されるので、コピー&ペーストする必要はありません。
今回の s0101.py なら
あなたがやりたいことは、
① Driveの s0101.py をダブルクリック
↓
② 右側サイドバーにソースを表示
↓
③ ソースをコピー
↓
④ Colab中央の「コードセル」に貼り付け
↓
⑤ 中身を確認・必要なら修正
↓
⑥ ▶実行
という手順で大丈夫です。
なお、「.pyを中央のセルに表示させる方法がコピー&ペーストしかない」わけではありません。%loadを使えば自動的に中央セルへ読み込めます。ただ、今の段階では、右サイドバーで内容を確認してからコピー&ペーストする方法のほうが、何が起きているか分かりやすいと思います。
はい。そこは先ほどの私の説明を少し訂正する必要があります。
s0601.ipynb なのに、ダブルクリックしても中央にコードセルが出てこないのは、通常の「Colabでノートブックを開いている状態」になっていないからです。
先ほどあなたが示してくれた
コードセル
<undefined># %% [code]
実行出力15
という表示は、.ipynbの中身をColabが「ファイルの内容」としてプレビューしている状態だと思われます。
つまり、
ダブルクリック → ipynbをノートブックとして開く
ではなく、
ダブルクリック → ipynbファイルの内容を右側でプレビュー
になっています。
本来こうなるはずです
s0601.ipynbをColabのノートブックとして開いた場合は、中央に、
┌──────────────────────────────┐
│ s0601.ipynb │
│ │
│ [ コードセル ] │
│ │
│ x = 10 │
│ y = 5 │
│ print(x + y) │
│ │
│ ▶ │
│ │
│ 実行結果 │
│ 15 │
└──────────────────────────────┘
という形で表示されます。
では、なぜ今のColabではそうならないのか?
おそらく、現在あなたが操作しているのはColabの左側の「ファイル」からGoogle Drive上の .ipynb をダブルクリックしているためです。
この操作では、環境によってはノートブックとして開かず、ファイルプレビューになってしまいます。
したがって、ここは一度、
「Google Drive上の .ipynb をどうやってColabのノートブックとして開くのか」
を確認したほうがいいです。
もしよければ、今表示されているColabの画面(s0601.ipynbをダブルクリックした状態)をもう一度スクリーンショットで送ってください。
それを見れば、どこをクリックすれば中央のコードセルとして開けるのかを、画面に合わせて一手ずつ説明できます。
ありがとうございます。スクリーンショットを見ると、原因がはっきりしました。
先ほどの私の説明が不正確でした。
あなたの s0601.ipynb は正常な .ipynb ファイルです。問題はファイルそのものではありません。
今、起きていること
スクリーンショットでは、
- 左:Colabの「ファイル」
PyBook→Ch06s0601.ipynbをクリック- 右側に「s0601.ipynb 元のソース」
- 中央には、もともと開いている
Untitled4.ipynbの空のコードセル
となっています。
つまり、現在の操作は、
s0601.ipynbを「開いている」のではなく、Colabのファイルブラウザで「プレビューしている」
状態です。
そのため、右側にソースが出るのです。
s0601.ipynbを中央のコードセルとして開く方法
ここが今回のポイントです。
方法① 一番確実な方法
画面上部の
「ファイル」
をクリックしてください。
その中にある
「ノートブックを開く」
を選びます。
Googleの公式説明でも、既存のColabノートブックは [ファイル] → [ノートブックを開く] から開けます。
そこで、
Google Drive
↓
PyBook
↓
Ch06
↓
s0601.ipynb
を選んでください。
そうすると、今の Untitled4.ipynb の中央画面ではなく、s0601.ipynbそのものがColabノートブックとして開きます。
そして中央に、
x = 10
y = 5
print(x + y)
というコードセルが表示されるはずです。
方法② 今の画面から開く場合
左側のファイル一覧で s0601.ipynb を選んだとき、今は右側にプレビューが出ています。
ですから、**右側の「s0601.ipynb」のところにある「︙」**をクリックして、開くためのメニューが出るか確認してください。
ただし、Colabの現在のUIではこのファイルブラウザからの操作が少し分かりにくいので、私は**方法①の「ファイル → ノートブックを開く」**をお勧めします。
そして重要な訂正
先ほど私は、
.ipynbはColabで開けば中央にコードセルが表示される
と説明しました。
これは正しいです。
今回そうなっていないのは、
.ipynbだから中央に表示できない
のではなく、
左側のファイル一覧でダブルクリックしたため、「ノートブックを開く」のではなくファイルのプレビューになっている
からです。
したがって、今回の結論はこうです。
| ファイル | Colabでノートブックとして開いた場合 |
|---|---|
s0101.py |
コードセルにはならない |
s0601.ipynb |
中央にコードセルとして表示される |
そして今回の s0601.ipynb は、ファイル自体には問題ありません。
なお、Google公式でも .ipynb はColabのノートブック形式であり、[ファイル] → [ノートブックを開く] で既存のノートブックを開けると説明されています。
まず「ファイル」→「ノートブックを開く」→ s0601.ipynb を選ぶ、を試してみてください。
ここで中央にコードセルが出れば、原因が完全に確認できます。


コメント