Python入门——认识函数

来源:互联网 发布:淘宝安装师傅怎么加盟 编辑:程序博客网 时间:2024/04/30 21:26

1.调用函数

#举几个使用函数的例子:#比较大小cmp(1,2) #x<y,返回-1cmp(2,1) #x>y,返回1cmp(1,1) #x==y,返回0#数据类型转换int('123') #string 转换为 intstr(123) #int 转换为 string

遇见不清楚的函数,可以使用help()查询,()里加函数名

2.编写函数

#使用def来定义自己的函数.#求表中元素x的2次方的和,例:def square_sum(L):    s = []    for x in L:        s.append(x**2)    return sum(s)print square_sum([1,3,4,5,6])#或者简写def square_sum(L):    return sum(x*x for x in L)print square_sum([1,2,3,4,5])

3.返回多值

#返回多个值,例:#求一元二次方程,import math是引用math包import mathdef ans_equation(a,b,c):    x = b*b - 4*a*c    if x < 0:        return    elif x == 0:        return -b/(2*a)    else :        return ((math.sqrt(x)-b)/(2*a)),((math.sqrt(x)-b)/(2*a))print ans_equation(2,3,0)

4.递归函数

#阶乘,例:def fact(n):    if n == 1:        return 1    return n*fact(n-1)#我还想举一个汉诺塔的例子,因为实在不错:#参数为有几个移动的盘子,后面a、b、c为移动的柱子:def move(n,a,b,c):    if n == 1:        print a,'-->',c        return    move(n-1,a,c,b)    print a,'-->',c    move(n-1,b,a,c)move(6,'A','B','C')

5.定义默认参数

首先要知道,有一些函数,是可以因为传递参数不同而改变
例如:
int(‘123’),不传参数时,是输出十进制,但是,当传递参数时,就不一样了
int(‘123’,8),这时传了一个8进去,函数就会输出八进制的’123’,即83

#可以自定义次方函数,例:def power(x,n=2):    s=1    while n>0:        n=n-1        s=s*x    return s#注意!由于函数参数,从左到右匹配,#所以,默认参数只能定义在必须参数后面

6.可变参数

可以接受多个参数,
如:def fn(*args),其中的*号,就是可以传入多个参数给可变参数
在函数内部,把args当成tuple就好了

#求平均数,例:def average(*args):    if args:        return sum(args)*1.0/len(args)    else :        return 0.0
0 0
原创粉丝点击