zoukankan      html  css  js  c++  java
  • python学习笔记(三)——函数

    函数定义
    def 函数名(形参 . . . )
    	函数体
    

    1. 函数参数

    • 返回值:可以有一个或多个
    • 形参:支持默认形参、关键字形参、可变参数形参等
    1.1 必须参数

    调用时传入的参数必须与定义时相同。

    # a,b 是必须参数或者叫位置参数
    def fun(a,b):
    	return a,b,a+b
    
    调用:
    print(fun(2,3))
    输出:
    (2, 3, 5)
    
    2.2 默认参数

    调用时可以选择使用默认参数或者可选择直接给定参数的值

    def fun(a,b=10):
        return a+b
     
    调用:   
    print(fun(5))
    输出:
    15
    print(fun(5,5))
    输出:
    10
    
    1.3 关键字参数

    使用指定某个关键字的方式定向赋值。

    def fun(a=1,b=2,c=3,d=4):
        print(a,b,c,d)
    
    调用:    
    fun(d = 4)
    输出:
    1 2 3 4
    
    1.4 不定长参数 *args

    在调用时可以传入若干参数,函数会以元组(tuple)的形式导入形参。

    def fun(*args):
        print(type(args),args,args[0])
        
    调用:
    fun(1,2,3,4)
    输出:
    <class 'tuple'> (1, 2, 3, 4) 1
    
    1.5 不定长参数 **kwargs

    可以接收成对的关键字参数,以字典的方式导入形参。

    def fun(**kwargs):
        print(type(kwargs),kwargs)
        
    调用:
    fun(a=1,b=2)
    输出:
    <class 'dict'> {'a': 1, 'b': 2}
    调用:
    fun(x=10,y=20,z=30)
    输出:
    <class 'dict'> {'x': 10, 'y': 20, 'z': 30}
    
    

    匿名函数

    lambda 形参:表达式
    

    匿名函数一般用于功能比较简单函数中。
    lambda x,y:x+y
    等价于
    def fun(x,y):
     return x+y

    匿名函数使用时,可指定一个返回值用于该函数的调用。

    f = lambda x,y,:x+y
    
    调用:
    print(f(2,3))
    输出:
    5
    

    递归函数

    通过自身调用自身实现一些特殊的计算需求。如,求阶乘

    def fun(n):
        if(n == 1):
            return 1
        return n*fun(n-1)
        
    调用:
    print(fun(5))
    输出:
    120
    

    在设计递归时一定要注意边界条件的设计。

  • 相关阅读:
    web应用程序的状态管理
    web学习笔记二
    java Web 学习笔记一
    简述Bootstrap栅格布局方式
    CSS3笔记
    CSS 笔记
    初识HTML流水笔记
    数据库初识
    java流的操作
    Java 套接字使用
  • 原文地址:https://www.cnblogs.com/TaoR320/p/12680116.html
Copyright © 2011-2022 走看看