>>> class Foo:
	def __init__(self, name):
		self.name = name
	def __str__(self):
		return "A Foo object named: {}".format(self.name)
	def __repr__(self):
		return "Foo(%s)" % self.name

	
>>> obj = Foo("Rover")
>>> print(obj)
A Foo object named: Rover
>>> obj
Foo(Rover)

>>> class Foo:
	def __init__(self, name):
		self.name = name
	def __str__(self):
		return "A Foo object named: {}".format(self.name)
	#def __repr__(self):
	#	return "Foo(%s)" % self.name

	
>>> obj = Foo("Rover")
>>> print(obj)
A Foo object named: Rover
>>> obj
<__main__.Foo object at 0x01261730>
>>> 
>>> class Foo:
	def __init__(self, name):
		self.name = name
	#def __str__(self):
	#	return "A Foo object named: {}".format(self.name)
	def __repr__(self):
		return "Foo(%s)" % self.name

	
>>> obj = Foo("Rover")
>>> obj
Foo(Rover)
>>> print(obj)
Foo(Rover)