On 21/11/2015 13:20, Cai Gengyang wrote:
This is a piece of code that calculates tax and tip :

def tax(bill):
     """Adds 8% tax to a restaurant bill."""
     bill *= 1.08
     print "With tax: %f" % bill
     return bill

def tip(bill):
     """Adds 15% tip to a restaurant bill."""
     bill *= 1.15
     print "With tip: %f" % bill
     return bill

meal_cost = 100
meal_with_tax = tax(meal_cost)
meal_with_tip = tip(meal_with_tax)

Does bill *= 1.08 mean bill = bill * 1.15 ?

bill *= 1.08 would mean bill = bill*1.08 (not 1.15; I assume that's a typo).

Although you can never be 100% sure in Python (as * or *= could have been redefined to do something else), there's no reason to suspect that here.

Also, there's probably some technical difference that someone could up with (*= doing in-place modification for example), but that shouldn't matter when bill is just a number.

--
Bartc

--
https://mail.python.org/mailman/listinfo/python-list

Reply via email to