• 05-Python基础之函数基础


    python之函数基础

    -----------------------------------------------------------------------------------------------------

    函数一般格式

    函数的格式包括:

      def 函数名(参数):函数名符合标识符原则  

    #函数格式
    def main(*args,**kwargs):
        '''
        函数实现过程
        '''
        return '' #返回值

      参数:    没有参数,有一个参数,有多个参数;

          位置参数,默认参数,动态参数,顺序参数;

        没有参数:定义函数和调用函数时括号里都不写内容

        有一个参数:传什么就是什么

        有多个参数:位置参数

        位置参数:必须传,且有几个参数就传几个值

        默认参数:可以不传,如果不传就是用默认的参数,如果传了就用传的

        动态参数:可以接受任意多个参数,参数名之前加*,习惯参数名args,接收的是按位置传的值,返回时元组形式,参数名之前加**,习惯参数名kwargs,接收的是按关键字传的值,返回是字典形式,args必须在kwargs之前

        参数顺序:位置参数,*args,默认参数,**kwargs

     如下代码示例:

    #定义一个my_sum函数,传入a,b的值,返回a+b
    def my_sum(a,b):   #my_sum是函数名,res存总和,之后返回
        res = a+b
        return res  #返回值
    
    sum = my_sum(3,4)
    print(sum)

    完整的额参数代码:即包含位置参数,动态参数,默认参数

    def my_sum(a,b,*args,c=8,**kwargs):   #my_sum是函数名,res存总和,之后返回
        sum = a+b
        for i in args:
            sum+=i
        return sum,kwargs  #返回值,将默认参数前面的数计算总和,后面的赋值存储在字典
    
    sum = my_sum(3,4,4,5,6,78,1,default=2,e = 'aaaa',f = 'bbbb')
    print(sum)

    函数四个部分:

      函数的定义:如何定义?第一时间想到def    啪啪啪括号冒号这堆

      函数的参数:位置,默认,动态,传输格式:位置,*args,默认,**kwargs

      函数的调用:变量 = 函数名(),如果函数有返回值,返回一个值,没有返回值,变量=None

      函数的返回值:

         没有返回值 :默认返回None

          不写return:函数内的代码执行完毕自动结束

          只写return:结束一个函数

          return None

        返回一个值:结束了函数且返回一个值,可以是任意的值

        返回多个值 : 多个值之间用逗号隔开,接收的时候可以用一个变量接收(元祖),也可以用等量的多个变量接收

      函数的参数:

        形参:定义函数的时候括号内的参数
          位置参数 :必须传

          *args :动态参数 可以接收任意多个按位置传入的参数

          默认参数 : 可以不传  —— 陷阱

          **kwargs : 动态参数 可以接受任意多个按关键字传入的参数

        实参:调用函数的时候函数时候括号内的传入的实际值

          按照位置传参数

          按照关键字传参数

          可以混用 位置参数必须在关键字传参之前

          不能对一个参数重复赋值

        默认参数的陷阱:如果默认参数的值是一个可变数据类型,那么每一次调用函数的时候,如果不传值就公用这个数据类型的资源

     函数练习题:

    1、写函数,计算传入字符串中【数字】、【字母】、【空格】 以及 【其他】的个数

      解析:结合字符串方法:isdigit() ,isalpha() ,isspace()方法及if语句就可以解决

    自学课程参照老男孩全栈视频
  • 相关阅读:
    GNU编码标准
    glade2 与 glade 3 (转)
    简单 gcc 参数
    gtk 主循环函数
    指针与数组关联导致的一些现象
    C语言声明数组变量时,在什么情况下,可不指定数组大小
    文件复制函数的效率比较
    关于VMware虚拟机的上网
    errno的基本用法
    查找数组中最大的2个数
  • 原文地址:https://www.cnblogs.com/chenrongjin/p/10016553.html
Copyright © 2020-2023  润新知