how to make return(self.res) not to output the content of list ?

Peter Otten __peter__ at web.de
Thu Sep 25 02:44:39 EDT 2014


luofeiyu wrote:

> `sys.displayhook = lambda obj: None ` will block everything to be
> displayed on the interactive python console .
> 
> i rewrite my code as the following :
> 
> import sqlite3,os,jinja2
> db = r'data.sqlite'
> con = sqlite3.connect(db)
> cur = con.cursor()
> 
> class status():
>       def __init__():
>           import sys
>           sys.displayhook=mydisplay
>       
>       def mydisplay(x):
>           if (x is not the result of an method grow of class status ) : x 
>           #how to do in python code? else : pass
>   
>       def grow(self):
>           self.res=  a data ananlyse process
>           return(self.res)
>      
>       def display(self):
>           #to display it in the html table
> 
> 
> 
> how to fulfill the mydisplay function in python code to make x.grow() in
> the following not to output the list of self.res??
> 
> 
> import analyse
> x=analyse.status()
> x.grow()

Have grow() return a list subclass with the empty string as its repr():

>>> class GrowMethodResult(list):
...     def __repr__(self): return ""
... 
>>> def grow():
...     return GrowMethodResult([1,2,3])
... 
>>> grow()

>>> 





More information about the Python-list mailing list