いろいろ備忘録日記

主に .NET とか Go とか Flutter とか Python絡みのメモを公開しています。

IPythonの主な機能

?コマンドで出てくるヘルプ(MAIN FEATURES)から抜粋。適当に訳していますので
間違っている可能性は大です。こんな感じと思ってください。

  1. 通常のpython helpシステムへのアクセス。(helpコマンド)
  2. マジックコマンド(IPython独自の便利なコマンドの事。%commandでアクセス。%magicでヘルプ)
  3. コマンドのエイリアス機能。(%aliasでヘルプ)
  4. 動的オブジェクト情報の表示(ダイナミックヘルプみたいなもの。オブジェクト?でアクセス。オブジェクト??で詳細ヘルプ。).
  5. 補完機能(IPythonのメイン機能。インテリセンスみたいなもの。タブで補完)
  6. コマンドライン履歴検索機能(Ctrl-p, Ctrl-nで検索可能。Ctrl-rでインクリメンタルサーチ)
  7. 実行したコマンドセッションの保存(readlineモジュールが必要.)
  8. 入力をロギングしたり、セッションから復元したりできる??(訳がよくわからないです・・Logging of input with the ability to save and restore a working session.)
  9. シェルコマンドの実行(!をつけてコマンドを発行することができる。!lsなど)
  10. reloadコマンドの拡張(ネストしているモジュールも一気にreloadしてくれる)
  11. スタックトレースが色付けされ、さらに多くの情報を表示。(%xmode, %xcolorを参照。)
  12. 入力のキャッシュ機構。(IPythonは入力されたコマンドをキャッシュする機能があります)
    1. 以下のコマンドでキャッシュにアクセスできます。
      1. _i:前回実行したコマンド
      2. _ii:前々回のコマンド
      3. _iii:前々々回のコマンド
      4. _ih:ヒストリを全部表示。_ih[n]で特定のヒストリ表示。当然、_ih[1:3]なんてこともできます。
      5. _i:_ih[n]と同じことができます。_i3とすると3番目の履歴。_i3 == _ih[3]
      6. %hist:ヒストリの履歴表示
  13. 出力のキャッシュ機構
    1. 以下のコマンドでキャッシュにアクセスできます。
      1. _(アンダースコア1個): 前回の出力
      2. __(アンダースコア2個) : 前々回の出力
      3. ___(アンダースコア3個) : 前々々回の出力
      4. _oh: 出力履歴を表示
      5. _: n番目の出力履歴を表示
  14. ディレクトリ履歴(IPythonは、訪れたディレクトリのキャッシュ機能を持っています.)
    1. 以下のコマンドでアクセスできます。
      1. _dh:履歴を表示。スライス可能。
  15. 自動括弧付けと自動クォート機能
    1. 自動括弧付け
      1. callableオブジェクトは、callable_obj a,b,cとして実行すると自動でcallable(a,b,c)としてくれる(ex: str 'a' ==> str('a'))
      2. 強制的に自動括弧付けにするには、先頭に/をつけて実行。(ex: /global ==> global())ただし、これは行の先頭でつけなければならない。
    2. 自動クォート機能
      1. 行の先頭で ,コマンド 引数 引数 ・・・とすると引数が自動でクォートづけされる。(ex ,str a ==> str("a"))
      2. ,の代わりに;を使うと一つの文字列としてまとめてくれる。
      3. 次のはエラーとなる。 x = ,str a <== syntax error!!