zoukankan      html  css  js  c++  java
  • the day of python learning(函数)

    函数    可读性强,复用性强

    函数的定义
    def 函数名():
    函数体
    return 返回值

    所有的函数
    • 只定义不调用就一定不执行
    • 先定义后调用
    函数名()   #不接收返回值
    返回值 = 函数名() #接收返回值

    返回值
      没有返回值:默认返回None
          不写return:函数内的代码执行完毕自动结束
          只写return:结束一个函数
          return None ------不常用
       返回一个值:#结束了函数并且返回一个值
              #可以是任意的值
              #如果一个程序中有多个return,那么只执行第一个
       返回多个值:#多个值之间用逗号隔开,接收的时候可以用一个变量接收(元组
              #也可以用等量的多个值接收

    def f(a):
      return 'nihao'

    ret = f('dajiahao')
    print(ret)

    参数
    形参 定义函数的时候
         #位置参数:必须传
         #*args:动态参数 可以接收任意多个按位置传入的参数
         #默认参数:可以不传 -----陷阱
         (如果传了就用传的参数,不传则使用默认参数)

       #**kwargs:动态参数 可以接受任意多个按关键字传入的参数
        实参 调用函数的时候
    #按照位置传参数
           #按照关键字传参数
             #可以混用 位置参数必须在关键字传参之前
             #不能对一个参数重复赋值
    函数的调用
       只有调用函数的时候
       按照位置传:直接写参数的值
       按照关键字传:关键字 = 值
    定义函数
      位置参数:直接定义参数
      默认参数:关键字参数:参数名 = ‘默认的值’
      动态参数:可以接受任意多个参数
            #参数名之前加*,习惯参数名args
            #参数名之前加**,习惯参数名kwargs
      顺序:位置参数,*args,默认参数,**kwargs
    动态参数
      两种:可以接受任意个参数
      *args : 接收的是按照位置传参的值,组织成一个元组
      **kwargs:接收的是按照关键字传参的值,组织成一个字典
    args必须在kwargs之前

    动态参数的另一种传参方式
    def func(*args):#站在形参的角度上,给变量加上*,就是组合所有传来的值。
         print(args)
     
     func(1,2,3,4,5)
     l = [1,2,3,4,5]
     func(*l)  #站在实参的角度上,给一个序列加上*,就是将这个序列按照顺序打散
    
    
     def func(**kwargs):
       print(kwargs)
     func(a=1,b=2)
     d = {'a':1,'b':2} #定义一个字典
     func(**d)

    函数的注释

    def func():
        '''
        这个函数实现了什么功能
        参数1:
        参数2:
        return: 是字符串或者列表的长度    '''
        pass
     
    默认参数的陷阱
     
     如果默认参数的值是一个可变数据类型,
    那么每一次调用函数的时候,
    如果不传值就公用这个数据类型的资源





        

  • 相关阅读:
    PyQt5对话框
    PyQt5基础控件
    PyQt5主界面
    PyQt5入门
    ioctl太多虚拟内存不够用
    code principles
    Error: watch ENOSPC
    intelJ
    cas
    C的函数指针的作用,以及其赋值是弱类型的
  • 原文地址:https://www.cnblogs.com/wai-xin-ren/p/9556575.html
Copyright © 2011-2022 走看看