Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonのhowdoiコマンドでプログラミングの疑問をターミナルから即解決する方法

howdoiとは何か

howdoiは、コマンドラインから直接プログラミングに関する質問への回答を取得できる、Python製の便利なCLIツールです。Stack Overflowなどに寄せられた膨大なQ&Aの中から、質問に最も関連性の高いコード例を自動的に抽出して表示してくれます。

「この構文どう書くんだっけ?」といった場面で、わざわざブラウザを開いて検索する必要がなく、ターミナル上で瞬時に答えを得られるのが最大の魅力です。

インストール方法

pipを使えば、以下のコマンド一つで簡単にインストールできます。

pip install howdoi

基本的な使い方

使い方は非常にシンプルで、howdoiの後に知りたいことを自然言語で入力するだけです。

例1:Pythonでリストを作成する

C:\Py3Project>howdoi create a python list

出力結果

上記のコマンドを実行すると、次のような結果が得られます。

>>> l = [None] * 10
>>> l
[None, None, None, None, None, None, None, None, None, None]

この例では、Noneを10個持つリスト(初期化済みリスト)を作成する方法が返されています。

例2:今日の日付を出力する

c:\python3>howdoi print today's date in python

出力結果

for date in mylist :
print str(date)

例3:フィボナッチ数列を生成する

c:\python3>howdoi create fibonnaci series in python

出力結果

def F(n):
    if n == 0: return 0
    elif n == 1: return 1
    else: return F(n-1)+F(n-2)

再帰を使った定番のフィボナッチ関数の実装例が提示されました。このように、典型的なアルゴリズムの書き方もすぐに確認できます。

例4:JavaScriptでカレンダーを使う

howdoiはPython以外の言語についても質問できます。

c:\python3>howdoi use calendar in javascript

出力結果

You can choose from Material UI.
https://www.material-ui.com/#/components/date-picker
https://www.material-ui.com/#/components/time-picker

この例では、React向けUIライブラリ「Material UI」の日付・時刻ピッカーコンポーネントが紹介されています。

例5:プログラミング以外の質問をしてみる

少し遊び心を効かせて、まったく関係のない質問を投げてみることもできます。

c:\python3>howdoi go to north pole

出力結果

I believe the difference is because GPS uses the geographical North/South Pole rather than the magnetic ones.
The further north you are, the bigger the difference is to where you are.
The GPS satellite positions need to be absolute, and using a fluctuating point of
reference like the magnetic poles is a big no-no.

北極点への行き方を尋ねたところ、GPSが磁北極ではなく地理的な北極・南極を基準としている理由に関する回答が返ってきました。このように、技術的な話題であれば幅広い分野の知識を引き出せるのもhowdoiの面白いところです。

まとめ

howdoiは、「細かい構文や実装方法を忘れたときに手軽に答えを引き出す」ための開発者向けツールです。調べもののためのコンテキストスイッチを減らし、作業の流れを止めずに済むため、日々のコーディング作業の生産性向上に役立ちます。ぜひ一度インストールして、ターミナルからの素早い情報収集を体験してみてください。

  1. CSSのdisplay:noneで要素を非表示にする方法

    CSSで要素を画面上から完全に取り除きたい場合は、displayプロパティにnoneを指定します。この値が設定された要素はブラウザ上に一切表示されず、レイアウト上のスペースも占有しません。例1:p要素を非表示にする以下の例では、p.demoクラスにdisplay: none;を適用しています。その結果、「9AM」というテキストはページ上に表示されません。一方、span.demo1にはdisplay: inline;を指定しているため、オレンジ色の背景を持つインライン要素として通常どおり表示されます。<!DOCTYPE html> <html> <head>

  2. Pythonで関数から何も返さない(Noneを返す)方法とは?

    Python関数がNoneを返す仕組みreturn文を持たない関数は「void関数」と呼ばれ、呼び出されると自動的にNoneを返します。None以外の値を返したい場合は、関数内にreturn文を記述する必要があります。値を返すこのような関数は「実りある関数(fruitful functions)」と呼ばれます。ここで注意すべき点として、None、True、Falseといった値は文字列ではありません。これらはPythonにおける特別な値でありキーワードでもあり、言語の構文の一部として扱われます。もし関数の最後まで処理が進んだ時点で、明示的なreturn文が一度も実行されていなければ、Python