2017-01-31 16 views
2

私のインタラクティブなPythonで奇妙なバグがありました。私はいくつかの助けを求めていました。対話的なPythonターミナルが正しく表示されない

まず、私のpythonは/opt/local/bin/pythonから実行されています。これは完全に素晴らしいものです。

しかし、私がコマンドラインからpythonを実行しているとき、いくつかの奇妙なことが起こっています。次の例があります。

Python 2.7.13 (default, Dec 18 2016, 05:35:35) 
[GCC 4.2.1 Compatible Apple LLVM 7.3.0 (clang-703.0.31)] on darwin 
Type "help", "copyright", "credits" or "license" for more information. 
>>> 2 
>>> 2 

注:2を入力した後、私は一度だけ入力します。ただし、正常に印刷されません。なぜそれがこのようなものなのか分かりません。ちょうどそれを入力すると、私は次のようなことをすることができます:

print('this is also weird') 
>>> this is also weird 

出力がどのように表示されます。

ただし、対話型端末からexit()を使用して終了しようとすると最悪です。これは何が起こるかの例です。

>>> bshprmpt$ -bash: f: command not found 
bshprmpt$ bshprmpt$ bshprmpt$ bshprmpt$ bshprmpt$ 

各行の後に入力してください。私はちょうど何かが起こるかどうかを調べるためにfとタイプしました。私はインタラクティブなPythonを終了し、それに戻ってジャンプしたい:

bshprmpt$ 
bshprmpt$ 
bshprmpt$ 
bshprmpt$ 
bshprmpt$ 
bshprmpt$ 

私は複数回入力してください。誰も助けることができますか?これは比較的奇妙なバグです。私は束の間を見回しましたが、多くのサポート情報を見つけることができませんでした。

ありがとうございました!

編集:私は周りを探索するのにもっと時間を費やしていたはずです。ソリューションに感謝します。 Hereは、スーパーユーザーの別のリンクです。その解決策は実際に学校の私の教授の一人から来ました。そこには驚きはありません。

+0

新しい端末ウィンドウで上記の例を実行した場合も発生しますか? – mkrieger1

+1

もう一度電源を入れ直してみましたか? Joking(一種)ですが、リセットコマンドを実行してみることもできます。この既知の問題はmacportsもあります。 http://superuser.com/questions/983755/os-x-terminal-behaves-oddly-after-running-python-interactively – rtk22

+0

これは、たとえば、 'curses'や他の直接端末操作呼び出しは、端末に設定された非標準モードが何であれ、クリーンアップせずに終了しました。通常、 'stty sane'はそのほとんどをクリアします... – twalberg

答えて

1

MacPortsには、herehereと記載されている既知の問題があります。

"+ readline"オプションを付けてpythonをインストールするように修正されているようです。

sudo port selfupdate 
sudo port clean python27 
sudo port install python27 +readline 
関連する問題