On 10/11/05, leewang kim <[EMAIL PROTECTED]> wrote: > I wrote the following code and got the output: > a 13 0 > None > b 81 3
(snip) > where are those 'none' from? and how can I remove them? > > class Point: > def __init__(self,x,y,name): > self.x = x > self.y = y > self.name = name > def summary(self): > print self.name,self.x,self.y Here you print your self.name value etc. > if __name__ == '__main__': > from string import letters > m = 13,81,8,9,1 > n = 0,3,2,2,1 > q=len(x) > points = [ Point(m[i],n[i],letters[i]) for i in range(q) ] > i=0 > while i<q: > print points[i].summary() Here you print whatever is returned from the summary() method. Since that method doesn't return anything explicitly, None is returned by default, and you are printing that. > i=i+1 One simple fix - change the summary method to returnt the values rather than print them - replace 'print' with 'return' in that method. Another would be not to print the returned values - remove 'print' from your while loop. -- Cheers, Simon B, [EMAIL PROTECTED], http://www.brunningonline.net/simon/blog/ -- http://mail.python.org/mailman/listinfo/python-list