729
Help us understand the problem. What are the problem?

More than 1 year has passed since last update.

posted at

updated at

デバッグ時はprintではなく、Icecreamを使うと便利

この記事を読んでみて、とても便利だなーと思ったので共有したいと思います。

モチベーション

以下のコードを想定しましょう。

num1 = 30
num2 = 40

print(num1)
print(num2)

出力は

30
40

となります。さて、上の出力を見て3040num1num2のどちらに対応しているかすぐに判別がつくでしょうか?
出力変数が少ないうちはこれでも問題はなさそうですが5個とかになると少し面倒くさくなりますね。

とりあえずの解決策として次のようにすれば良いでしょう。

num1 = 30
num2 = 40

print('num1', num1)
print('num2', num2)

出力は

num1 30
num2 40

確かに変数名と変数値の対応は元のコードよりは分かりやすくなりました。しかし、問題はコードの記述が面倒という点です。

Icecreamとは?

上のような問題への解決策としてpythonライブラリのIcecreamがあります。
インストールはpipで行えます。

pip install icecream
from icecream import ic

num1 = 30
num2 = 40

ic(num1)
ic(num2)

出力は

ic| num1: 30
ic| num2: 40

非常にシンプルでいいですね!
Icecreamの便利性はこれだけではありません。関数や条件分岐など使えます。
興味ある人はこちらから調べてみてください。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Sign upLogin
729
Help us understand the problem. What are the problem?