python的函数

def area(w,h):
    return w * h
w = 3
h = 4
print(area(w,h))

结果为12

 

#传可变对象参数
def changeme(mylist):
    mylist.append([1,2,3,4])
    print("函数内取值:",mylist)
    return
mylist = [5,6,7,8]
changeme(mylist)
print("函数外取值:",mylist)

结果:

函数内取值: [5, 6, 7, 8, [1, 2, 3, 4]]
函数外取值: [5, 6, 7, 8, [1, 2, 3, 4]]

 

#必须参数,必须传入一个参数,否则语法出错
def hehe(name):
    print(name)
    return
hehe('laowang')

结果:

laowang

 

#关键字参数,不需要使用指定顺序
def name_age(name,age):
    print("姓名:",name)
    print("年龄:",age)
    return
name_age(age="18",name='Mr.li')

结果:

姓名: Mr.li
年龄: 18

 

#默认参数,如不输入参数,则会使用默认参数输出
def name_ages(name='relax1949',age=24):
    print("姓名:",name)
    print("年龄:",age)
    return
name_ages(name='alex')
print('-----')
name_ages(age = '26')

结果:

姓名: alex
年龄: 24
-----
姓名: relax1949
年龄: 26

 

#global全局变量
a = 10
def text():
    global a  #需要使用global关键字声明,引用局部变量
    print(a)
    a = 123
    print(a)
text()

结果:

10
123

 

#不定长参数
def func(str,*arg,**kwargs):   #分别为元素、元组、字典
    print(str,arg,kwargs)
func('chen1','chen2','chen3','chen4',name='relax1949',age='25')
#结果分别为元素、元组、字典  

结果:

chen1 ('chen2', 'chen3', 'chen4') {'name': 'relax1949', 'age': '25'}

 

#lambda匿名函数
gg = lambda x,y:x ** y
print(gg(2,3)) 

结果:

8

posted @ 2017-09-02 12:47  relax.1949  阅读(236)  评论(0编辑  收藏  举报