Hello all,
I've two objects (both instances of a class called Person) and I want
to use the __and__ method and print the combined attributes of the two
instances.
To be precise, here is my code....
class Person:
def __init__(self,name):
self.name = name
def print_name(self):
print self.name
def __and__(self,other):
self.name = '%s AND %s' %(self.name,other.name)
return self.name
p = Person("John")
q = Person("George")
r = p and q
print r.print_name()
Output:
-----------
George
None
I've also tried this:
class Person:
def __init__(self,name):
self.name = name
def print_name(self):
print self.name
def __and__(self,other):
a = Person()
a.name = '%s AND %s' %(self.name,other.name)
return a
p = Person("John")
q = Person("George")
r = p and q
print r.print_name()
Output:
-----------
George
None
The above output in both cases is giving me a doubt if __and__ method
is over-ridable or not?
The output that I am accepting is:
John AND George
What are the changes if to be made?
Thanking You
Thejaswi Puthraya
http://thejuhyd.blogspot.com