コラボその2

確認ですが、.pyも.ipynbもColabでは「中央にコードを表示してから実行」はできないということですね。なのでプログラム内容を中央のColabのコードセルに表示して、内容を確認・修正してから実行したい 場合は、ファイルのダブルクリックで 右サイドバーにファイルテキストを表示させ、それをコピペでColabのコードセルに表示させ実行するという説明でいいのですね。

はい、ほぼその理解でいいのですが、1点だけ訂正があります。

.py と .ipynb では違います

  • .py
    → Colabのファイル一覧でダブルクリックしても、通常は右側にソースが表示されるだけです。
    → 中央のコードセルに直接表示するには、コピー&ペーストする方法でOKです。
    → あるいは先ほど説明した %load でも読み込めます。
  • .ipynb
    → 本来はColabのノートブックそのものなので、Colabで開けば中央にコードセルが表示されます。
    → .ipynbまで「必ずコピー&ペーストしなければならない」というわけではありません。

したがって、今回の説明を整理すると、こうなります。

「プログラム内容を中央のColabのコードセルに表示して、内容を確認・修正してから実行したい」場合、.py ファイルなら、ファイルをダブルクリックして右サイドバーにソースを表示し、その内容をコピーしてColabのコードセルに貼り付けて実行する方法が分かりやすい。

そして、.ipynbの場合は、Colabでそのファイル自体を開けば、コードセルが中央に表示されるので、コピー&ペーストする必要はありません。

今回の s0101.py なら

あなたがやりたいことは、

① Driveの s0101.py をダブルクリック
↓
② 右側サイドバーにソースを表示
↓
③ ソースをコピー
↓
④ Colab中央の「コードセル」に貼り付け
↓
⑤ 中身を確認・必要なら修正
↓
⑥ ▶実行

という手順で大丈夫です。

なお、「.pyを中央のセルに表示させる方法がコピー&ペーストしかない」わけではありません。%loadを使えば自動的に中央セルへ読み込めます。ただ、今の段階では、右サイドバーで内容を確認してからコピー&ペーストする方法のほうが、何が起きているか分かりやすいと思います。

s0101.py については了解しました。しかしs0601.ipynbでもダブルクリックで コードセルが中央に表示され ないのです。どうしてでしょう。

はい。そこは先ほどの私の説明を少し訂正する必要があります。

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をダブルクリックした状態)をもう一度スクリーンショットで送ってください。

それを見れば、どこをクリックすれば中央のコードセルとして開けるのかを、画面に合わせて一手ずつ説明できます。

Today 6:21 AM •
1189 文字 • 81 単語

広告

ありがとうございます。スクリーンショットを見ると、原因がはっきりしました。

先ほどの私の説明が不正確でした。
あなたの s0601.ipynb は正常な .ipynb ファイルです。問題はファイルそのものではありません。

今、起きていること

スクリーンショットでは、

  • 左:Colabの「ファイル」
  • PyBook → Ch06
  • s0601.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 を選ぶ、を試してみてください。
ここで中央にコードセルが出れば、原因が完全に確認できます。

コメント