2009-03-04 8 views
1

時には私は、IDLEの何千ものアイテムのリストを使って作業し、間違ってそれをシェルに印刷します。これが起こると、クラッシュするか、少なくとも非常に顕著にIDLEが減速します。あなたが想像しているように、これは非常に不便です。 全体を印刷するのではなく、要約した[1、2、...]出力を与える方法がありますか? ご協力いただければ幸いです。IDLEが巨大なリストを印刷するのを止めるにはどうすればいいですか?

+0

私はIDLE、IVLEではないと思います。 – bialix

+0

がIDLE – nosklo

+0

に修正されましたあなたが言うように、誤って印刷している場合、カスタム印刷機能を意図的に呼び出す必要があるため、あまり実行できません。 – Soviut

答えて

2

、のようなカスタム印刷機能を試してみてください:印刷機能があるため、あなたはそれを「上書き」することができるはずです、

のPython 3では
def my_print(obj): 
    if hasattr(obj, '__len__') and len(obj) > 100: 
     print '... omitted object of %s with length %d ...' % (type(obj), len(obj)) 
    else: print obj 
0

代わりにIPythonをシェルとして使用してください。

+0

iPythonはPython 3で動作しますか? – riza

0

カスタム印刷機能を使用できます。上記のように

0

。 (私はそれがインストールされていないので、私は確かめるためにそれを試すことはできません)おそらく実際のアプリケーションのために推奨されていませんが、あなたが物事を試している場合は、それは大丈夫でしょう。 IDLEためSqueezer拡張はちょうどこれを行うために書かれた

def myprint(*args): 
    # write the function as described by other people 
print = myprint 
0

それは次のように行くだろう。 Pypiの説明から:非常に長い出力が印刷されると、IDLEがハングアップする可能性があります(IDLEはPypiの説明から):

これを避けるために、スクイーザー 拡張子は、長いテキストの80行(設定)以外の任意の出力をキャッチし、 ではなく、長方形のボックスが表示されます。

スクイーザーを、および他の多くのIDLE拡張がIdleXに含まれています。

関連する問題