2009-03-04 24 views
1

有時我會在IDLE中處理數千個項目的列表,並意外地將其打印到shell中。發生這種情況時,它會崩潰或至少非常顯着地減慢IDLE。你可以想象,這是非常不方便的。 有沒有辦法做到這一點,而不是打印整個事情,只給我一個總結[1,2,...]輸出? 任何幫助將不勝感激。如何從打印巨型列表中停止IDLE?

+0

我想你的意思是IDLE,而不是IVLE。 – bialix 2009-03-04 08:12:41

+0

更正爲空閒 – nosklo 2009-03-04 19:29:27

回答

2

如上所述,嘗試使用自定義的打印功能:

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

您可以使用自定義打印功能。

0

在Python 3,因爲打印是一個函數,你應該能夠「忽略」了。 (我沒有安裝它,所以我無法嘗試確保它。)可能不推薦用於實際應用,但如果您只是嘗試一些事情,那我想是可以的。

它會去是這樣的:

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

Squeezer擴展IDLE寫入完成這一點。從Pypi上的描述:

如果打印非常長的輸出,IDLE可能會掛起。爲了避免這種情況,壓榨機 擴展捕獲任何輸出長於80行文字(可配置)和 顯示的矩形箱,而不是:

壓榨機,以及許多其他IDLE擴展包含在IdleX