print 関数が使えないんですが、なぜでしょうか???
LINE オプチャでも何度か同じ質問を目にしました。
Google Colabolatory や Jupyter でprint
関数が使えない という質問です。
具体的にはprint
関数で次のようなエラーが発生するような状態です。
エラーの原因
原因は、何度かあった質問全てにおいて同じで、
別のセルでprint
関数を上書きしているから
でした。
エラーの種類が「TypeError」かつエラーメッセージが「◯◯ object is note callable」の場合はほぼほぼ上書きしていることが原因だと思います。
「上書き」とは、具体的には次のように「print」という変数を作ることを指しています。
上記の場合、「print」は整数が代入された変数として定義し、その後でprint
関数として呼び出そうとしているため、エラーになっています。
Google Colab や Jupyter では一度実行された内容が記憶されているため、初級者の方はこのようなミスをしてしまうことが少なくないようです。
エラーを解消するには
では、エラーを解消するにはどうしたらよいか。
ランタイム、もしくはカーネルを再起動することで、何も実行していない初期状態に戻せます。
Google Colab の場合はメニューの「ランタイム」の中に「ランタイムの再起動」があります。
Jupyter の場合はメニューの「Kernel」の中に「Restart Kernel…」があります。
ランタイムやカーネルを再起動した後で再度変数「print」を作ってしまうと、当たり前ですが同じエラーが起きますので、そこだけご注意ください。
Google Colaboratory
本記事に掲載しているコードは Google Colaboratory で動作を確認しています。
下記リンクからアクセスして、ご自身の Google ドライブにコピーしていただければ、すぐに実行できます。
おわりに
今回は、
Google Colab や Jupyter でprint
関数が使えない原因と解消方法
についてお伝えしました。
頻繁に、というわけではありませんが、何度か同じような質問が LINE オプチャに投稿されたので、記事にしてみました。
print
関数以外でも上書きすると使えなくなるのですが、print
関数のケースが多いのは謎。。。
以上です。
コメント