On 2013-11-14 07:54, Thabile Rampa wrote:
Hi,
So I'm learning how to define my own functions, and in an exercise I
was given, I get this error:
Traceback (most recent call last):
File "X:/X/xxx/Xxxxx/function_practice.py", line 36, in <module>
main ()
File "X:/X/xxx/Xxxxx/function_practice.py/function_practice.py
[1]", line 34, in main
generatePersonID ()
TypeError: generatePersonID() takes exactly 1 argument (0 given)
Here is the code:
def getUserInput():
"""
Get input from the user, i.e fullname, grossSalary, costs.
Returns: fullName, grossSalary, costs
"""
grossSalary =None ;
costs =None
fullName=""
while not fullName:
fullName = raw_input ("First and Last Names: ")
while not grossSalary:
#TODO
grossSalary = int (raw_input ("Annual Gross Salary: "))
while not costs:
#TODO
costs = int(raw_input ("Yearly costs: "))
return fullName, grossSalary, costs
def generatePersonID (fullName):
"""generates unique ID"""
global id
id = (fullName) + 1
personID = str (id) + fullName
return personID
def main ():
getUserInput ()
generatePersonID ()
main ()
raw_input ("Press the enter key to exit.")
You define 'generatePersonID' as a function that requires one parameter
but you do not give it a parameter when you call it with in your 'main'
function. That's exactly what your error message is trying to tell you.
_______________________________________________
Tutor maillist - Tutor@python.org
To unsubscribe or change subscription options:
https://mail.python.org/mailman/listinfo/tutor