2

私はIPython シェルでSQLAlchemy ORM チュートリアルに取り組んpassword = Column(String)でおり、クラス定義を挿入する必要があるところまで来ました。奇妙なことに、入力するとすぐにクラス定義が終了しました。

少し遊んだ後、、、、またはクラスまたは関数定義でpass始まる行が次のようにあることがわかりましたreturnraise

def f(x):
    returnfoo = None

IPython での定義を終了します。これはデフォルトの Python インタープリターでは発生しないため、Python の問題ではありません。これは IPython のバグだと思いますが、私のシステムだけではないことを確認したかったのです。誰でもこの動作を確認できますか?

編集: Mac OS X Snow Leopard にプリインストールされている Python 2.6 用の IPython 0.11.dev を使用していました。0.10.2 では、実際には関数/クラス定義を終了しません。

def f(x):
    return

しかし、誤ってインデントをリセットしてしまうため、Enterもう一度押すとクラス定義が終了します。

4

2 に答える 2

1

私のシステムではそのようには機能しません。

In [1]: def f(x):
   ...:     returnfoo = None
   ...:     return returnfoo
   ...: 

私のバージョン:

$ ipython -V
0.10.2
于 2011-05-30T19:34:34.263 に答える
0

その問題はありません:

>>> def f(x):
    returnfoo = None
    return x
...: 

>>> f(1)
<<< 1
于 2011-05-30T19:38:57.303 に答える