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语句就可以解决

猜你喜欢

转载自www.cnblogs.com/chenrongjin/p/10016553.html