python 函数

1 函数的使用,函数调用 
>>> abs(-12)
12
函数名其实就是指向一个函数对象的引用,完全可以把函数名赋给一个变量,相当于给这个函数起了一个“别名”:
>>> a = abs
>>> a(-1)
1
 
函数的定义
   def 
   函数名
    括号
    参数
    :
    如下 def  my_abs(x):
 
定义一个 空函数
def  nop( ) :
    pass
 
函数返回值(可以多值返回)
import math

def move(x, y, step, angle=0):
    nx = x + step * math.cos(angle)
    ny = y - step * math.sin(angle)
    return nx, ny
 
函数的参数
    1 默认参数,兼容以前的函数
    2 默认参数需要在后面
 
比如定义一个人的函数
def man(name, gender)
    print("name:",name);
    print("gender:", gender);
 
如果需要传入年龄和城市
def man(name,gender,age=22,city="shenzhen")
    ...
 
可变参数的传入(参数的个数不固定)
 def calc(*numbers):
    sum = 0
    for n in numbers:
        sum = sum + n
    return sum
 
参数的组合(默认参数,可变参数,关键参数)
def  f1(a, b, c=0,*args, **kw)
    print(‘a = ',a ,'b = ',b, 'c = ', c, 'args = ', args, 'kw = ', kw)
 
 
递归函数
 def fact(n):
    if n == 1:
        return 1
    return n* fact(n-1)
 
使用递归函数时注意防止栈溢出
防止栈溢出的方法,尾递归
def  fact(n):
    return fact_iter(n, 1)
def fact_iter(num, product);
    if num = 1:
        return product
    return fact_iter(num -1, num * product)
 
基本数据类型中注意
赋值、浅拷贝、深拷贝 之间的区别
 

转载于:https://www.cnblogs.com/cjcai-blogs/p/9096160.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值