Home > Enterprise >  How to remove None value from output
How to remove None value from output

Time:12-01

So I'm doing an assignment.My task is to create a class that prints out the desired output in the question. My output matches the desired output except the None value. So Why am I getting None in my output after Total price. I see nothing in my code that should print None. My Code:

class Dolls:
    def __init__(self, name, price):
        self.name = name
        self.price = price

    def detail(self):
        print("Doll :",self.name)
        print("Total Price :",self.price)

    def __gt__(self,other):
        return self.price > other.price
        
    def __add__(self,other):
        self.name=self.name "," other.name
        self.price=self.price other.price
        return self

obj_1 = Dolls("Tweety", 2500)
print(obj_1.detail())
if obj_1 > obj_1:
    print("Congratulations! You get the Tweety as a gift!")
else:
    print("Thank you!")
print("=========================")
obj_2 = Dolls("Daffy Duck", 1800)
print(obj_2.detail())
if obj_2 > obj_1:
    print("Congratulations! You get the Tweety as a gift!")
else:
    print("Thank you!")
print("=========================")
if obj_4 > obj_1:
    print("Congratulations! You get the Tweety as a gift!")
else:
    print("Thank you!")
print("=========================")
obj_5 = obj_2   obj_3
print(obj_5.detail())
if obj_5 > obj_1:
    print("Congratulations! You get the Tweety as a gift!")
else:
    print("Thank you!")

The output:

Doll : Tweety
Total Price : 2500
None
Thank you!
=========================
Doll : Daffy Duck
Total Price : 1800
None
Thank you!
=========================
Doll : Daffy Duck,Bugs Bunny
Total Price : 4800
None
Congratulations! You get the Tweety as a gift!

CodePudding user response:

Your detail() function doesn't return anything, so the return value there is None. Replace the lines like print(obj_1.detail() with obj_1.detail() without the print and it should get rid of the printed None's.

  • Related