|
UnboundLocalError - Python Message
What does THIS mean?
UnboundLocalError: local variable 'taxrate' referenced before assignment
It means that you have tried to modify the value of a variable - perhaps in a function - before you have given it an initial value:
taxrate = 15
def getnet(gross):
taxrate /= 100.
net = gross - gross / (1.0 + taxrate)
return net
amount = getnet (230)
print amount
The variable taxrate is local to the getnet function ... the way the code is written, there is a DIFFERENT taxrate variable in the calling code.
You could share the variable by declaring it global in the function or - much better - you could use it read only in the function, in which case Python will see it from the outer scope.
So this will work:
taxrate = 15
def getnet(gross):
net = gross - gross / (1.0 + taxrate/100.0)
return net
amount = getnet (230)
print amount
And that's also far better because it doesn't alter the variable that contains the tax rate - rather it leaves it available for later use. (written 2009-01-31)
Associated topics are indexed under Y109 - Python - Exceptions [3441] Pressing ^C in a Python program. Also Progress Bar. - (2011-09-15) [3433] Exceptions - a fail-safe way of trapping things that may go wrong - (2011-09-11) [3177] Insurance against any errors - Volcanoes and Python - (2011-02-19) [2998] Using an exception to initialise a static variable in a Python function / method - (2010-10-13) [2994] Python - some common questions answered in code examples - (2010-10-10) [2622] Handling unusual and error conditions - exceptions - (2010-02-03) [2408] Robust user input (exception handling) example in Python - (2009-09-17) [2368] Python - fresh examples of all the fundamentals - (2009-08-20) [2281] Python - using exceptions to set a fallback - (2009-07-12) [1236] Trying things in Python - (2007-06-18) [1042] Nested exceptions in Python - (2007-01-18) [381] Exceptions in Python - (2005-07-17)
Some other Articles
Pre and post increment - the ++ operatorShort health and safety courseLearning Python - many new example programsBaby Caleb and Fortune City in your web logs?UnboundLocalError - Python MessagePython - a truly dynamic languageApache httpd and Apache Tomcat miscellanyService Excellence AwardsFirst ClasswxPython - Introduction and sample
|
3603 posts, page by page
Link to page ... 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73 at 50 posts per page
This is a page archived from The Horse's Mouth at
http://www.wellho.net/horse/ -
the diary and writings of Graham Ellis.
Every attempt was made to provide current information at the time the
page was written, but things do move forward in our business - new software
releases, price changes, new techniques. Please check back via
our main site for current courses,
prices, versions, etc - any mention of a price in "The Horse's Mouth"
cannot be taken as an offer to supply at that price.
Link to Ezine home page (for reading).
Link to Blogging home page (to add comments).
|
|