Python readlineモジュールがOS Xで利用できないのはなぜですか?

StackOverflow https://stackoverflow.com/questions/327251

  •  11-07-2019
  •  | 
  •  

質問

Pythonのドキュメント readline モジュールには「Availability:Unix」と書かれています。ただし、Unixとしてマークされた他のモジュールは利用可能ですが、OS Xでは利用できないようです。私が使用しているものは次のとおりです。

$ uname -a
Darwin greg.local 8.11.1 Darwin Kernel Version 8.11.1: Wed Oct 10 18:23:28 PDT 2007; root:xnu-792.25.20~1/RELEASE_I386 i386 i386
$ which python
/usr/bin/python
$ python
Python 2.3.5 (#1, Nov 26 2007, 09:16:55) 
[GCC 4.0.1 (Apple Computer, Inc. build 5363) (+4864187)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import readline
Traceback (most recent call last):
  File "", line 1, in ?
ImportError: No module named readline
>>> 

MacPortsを介してPython 2.5もインストールしましたが、 readline も使用できません。

OS XでPythonの raw_input()関数に readline 機能を提供するにはどうすればよいですか?

役に立ちましたか?

解決

py-readline (またはPython 2.5の場合は py25-readline )ポートをインストールしようとしましたか?

また、上記のスニペットでは、MacPort pythonではなく、Apple Pythonを使用しています。

MacPortバージョンは、 / opt / local ディレクトリ構造に配置する必要があります。パスを確認する必要があります。

他のヒント

rlwrap を試してください。 Pythonのどのバージョンでも、一般的にはすべてのシェルで動作するはずです。

Mac OS Xでの brew install rlwrap によるインストール

rlwrap python としての使用。履歴も保存します。

ライセンスの問題のため、OS Xには同梱されていません(GPLにより制限があります)。

readlineパッケージがインストールされている場合、Macports pythonは問題ありません。

MacのネイティブPythonでreadlineサポートを取得できるはずです。どうやら、それはBSDの編集ラインを介して実装されており、わずかに異なる方法で起動する必要があります。これをMacでテストしたところ、正常に動作します(OS X 10.5.7)。詳細については、 man python 、「対話型入力編集と履歴置換」セクションを参照してください。 -こちらでウェブ上にミラーリング

luga ~ $ python 
Python 2.5.1 (r251:54863, Feb  6 2009, 19:02:12) 
[GCC 4.0.1 (Apple Inc. build 5465)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import rlcompleter
>>> import readline
>>>
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top