我们已经学过用=给变量赋值,这次习题我们将学习用return来将函数的值赋给变量:
代码如下:
#-*-coding:utf-8-*-
def add(a, b):
#加法函数
print"ADDING %d + %d"%(a, b)
return a+b
def subtract(a, b):
#减法函数
print"SUBTRACT %d - %d"%(a, b)
return a - b
def multiply(a,b):
#乘法函数
print"MULTIPLY %d * %d"%(a, b)
return a*b
def divide(a, b):
#除法函数
print"DIVIDE %d / %d"%(a,b)
return a/b
print"Let's do some math with just functions!"
age = add(30, 5) #返回20-5给age
height = subtract(78, 4) #返回78-4给height
weight = multiply(90, 2) #返回90*2给weight
iq = divide(100, 2) #返回100/2给divide
print"Age: %d,Height:%d,Weight:%d,IQ:%d"%(age, height, weight, iq)
#A puzzle for the extra credit,type it in anyway.
print"Here is a puzzle."
what = add(age,subtract(height,multiply(weight,divide(iq,2))))
print"That becomes:",what,"Can you do it by hand?" 运行结果:
simengred$ python ex21.py
Let's do some math with just functions!
ADDING 30 + 5
SUBTRACT 78 - 4
MULTIPLY 90 * 2
DIVIDE 100 / 2
Age: 35,Height:74,Weight:180,IQ:50
Here is a puzzle.
DIVIDE 50 / 2
MULTIPLY 180 * 25
SUBTRACT 74 - 4500
ADDING 35 + -4426
That becomes: -4391 Can you do it by hand?
除了return的运用外,在多个函数叠加使用时,运算的顺序为:从内到外
例如:
what = add(age,subtract(height,multiply(weight,divide(iq,2))))
这个函数中,运算顺序是divide-multiply-subtract-add