[Tutor] Help with ebay profit/loss program error

Bell, Xaviea Xaviea.Bell at echostar.com
Tue Jul 19 23:10:04 CEST 2005



It looks like theres a typo you have: price= price=.35. This would cause an
error. 


-----Original Message-----
From: tutor-bounces at python.org [mailto:tutor-bounces at python.org] On Behalf
Of Sam Klinger
Sent: Tuesday, July 19, 2005 2:46 PM
To: tutor at python.org
Subject: [Tutor] Help with ebay profit/loss program error

Hi my name is Sam Klinger and I made a smal program to help find out the
cost of listing and selling an item on ebay. However I see nothing wrong
with the code but I get these error messages:

1.   Insertion fee.
2.   Selling Fees.
7.   Quit.
type in a number (1-7): 1
What is the starting price?9
Traceback (most recent call last):
 File "C:/Documents and Settings/Sam/My Documents/Hacks/Python
Scripts/ebay_money.py", line 46, in ?
   compute_insertion_fee()
 File "C:/Documents and Settings/Sam/My Documents/Hacks/Python
Scripts/ebay_money.py", line 8, in compute_insertion_fee
   if price <= .99:
UnboundLocalError: local variable 'price' referenced before assignment

Here is the code to my program:
#gets the price of the item
def listing_price():
   price=input('What is the starting price?')

#Gets the seling price
def selling_price():
   selling=input('What was the selling price?')

#Computes the price of insertion
def compute_insertion_fee():
   if price <= .99:
       price= price+.25
   elif price <= 9.99:
       price= price=.35
   elif price <= 24.99:
       price= price=.60
   elif price <= 49.99:
       price= price=1.20
   elif price <= 199.99:
       price= price=2.40
   elif price <= 499.99:
       price= price=3.60
   elif price >= 500.00:
       price= price=4.80
   print price

#Computes the selling value
def compute_final_value():
   if selling == 0.00:
       print 'No fees'
   elif selling <= 25.00:
       selling= selling * .025
   elif selling <= 1000.00:
       selling= ((selling - 25.00) * .0275)+ 1.31
   elif selling >= 1000.00:
       selling= ((((selling - 25.00) - 1000.00) * .0150)+ 1.31+ 26.81)
   print selling

# Prints the menu
def print_menu():
   print '1.   Insertion fee.'
   print '2.   Selling Fees.'
   print '7.   Quit.'

#Gets a menu choice from user
menu_choice=0
print_menu()
while menu_choice !=7:
   menu_choice= input("type in a number (1-7): ")
   if menu_choice == 1:
       listing_price()
       compute_insertion_fee()
   elif menu_choice == 2:
       selling_price()
       compute_final_value()
   elif menu_choice==7:
       pass

I could really use so help thanks!
_______________________________________________
Tutor maillist  -  Tutor at python.org
http://mail.python.org/mailman/listinfo/tutor


More information about the Tutor mailing list