python--函数

# -*- coding: cp936 -*-

def gcd(m,n): #必须有缩进
    while n:
        r = m%n
        m = n
        n = r
    return m
print gcd(20,30)

#默认参数
def area(width=2,height=3):
    return width*height    
print area(4) #第二个参数没有,用默认的3
print area(height=7,width=5) #这样写就不用在意参数的顺序

#返回多个值
def multi(a, b):
    return (a/b, a%b)
print multi(7,3)

#任意个参数,arg是列表
def f(*arg):
    sum = 0
    for i in arg:
        sum += i
    return sum
print f(1,2,3)

#任意个参数,arg是字典
def g(**arg):
    for key in arg:
        print key,':',arg[key]        
g(a=1,b=2,c=3)

#空函数
def h(a):
    pass

#全局变量
parameter = 1
def glb(parameter):
    return parameter + globals()['parameter']
print glb(2)

#嵌套函数
def multiplier(factor):
    def multiplyByFactor(number):
        return number*factor
    return multiplyByFactor
double = multiplier(2)
print double(5)
print multiplier(2)(5)

#重载
#不支持
原文地址:https://www.cnblogs.com/saieuler/p/3617228.html