zoukankan      html  css  js  c++  java
  • 自定义函数

    一、.函数:

        如果检测一个元素的长度用len非常简单,也可以写个循环来做。

    s = 'asd'
    def my_len():
        i = 0
        for k in s:
            i += 1
        print(i)
    my_len()

    二、.返回值:

        如果print打印这个函数,结果返回None,如果想要有返回值的话就要用return i。

        在函数里遇到return直接退出函数。

          return返回值的3种情况: 遇到return直接退出函数

            没有返回值: 返回None

              1.不写return

              2.只写return 

              3.return None

            返回1个值:

              1.可以返回任何数据类型

              2.只要返回就可以接收到

              3.如果在一个程序中有多个return,那么只执行第一个return就退出函数

            返回多个值:

              1.用多个变量接收:有多少返回值就用多少变量接收

              2.用一个变量接收:得到的是一个元祖

    三、传参函数

        还是打印元素长度,但是元素不固定,可以自己输入就需要用到传参了。    

    def func(s):        #行参
        i = 0
        for j in s:
            i += 1
        return i
    print(func('asdf'))    #实参

        通过s传入参数。

          参数:

            没有参数:定义函数和调用函数时括号里为空。

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

            有多个参数:位置参数

        

          参数分类:

            行参:

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

              位置参数:直接定义参数

              默认参数(关键字参数):参数名 = ‘默认的值’  #如果实参里也定义了,实参优先

              动态参数:可以接受任意多个参数

                #多个位置参数:*args  接收按照位置传参的值,组成一个元祖。

                #多个默认参数:**kwargs  接收按照默认传参的值,组成一个字典。

            实参:

              按照位置传参:位置参数需要几个就传几个值,*args无限传。

              按照关键字传参:如果行参有默认参数可以不传值,传了的按照实参的值运行,有**kwargs可以无限传。

          位置参数

    def func(x,y):
        if x > y:
            print(x)
        else:
            print(y)
    func(3,2)

          默认参数

    def func(x=1,y=4):
        if x > y:
            print(x)
        else:
            print(y)
    func()

          动态传参

    def func1(*args):
        print(args)
    func1(1,2,3)
    
    def func2(**kwargs):
        print(kwargs)
    func2(a = 1,b = 2,c = 3)

          动态参数另一种传参方式:传入列表或字典。

    def func1(*args):
        print(args)
    func1(1,2,3)
    l = [1,2,3]
    func1(*l)
    
    def func2(**kwargs):
        print(kwargs)
    func2(a = 1,b = 2,c = 3)
    d = {'a':1,'b':2,'c':3}
    func2(**d)

    四、函数注释:   

        def func():
          '''
          这个函数实现了什么功能
          参数1:
          参数2:
          :return:
          '''

          

      

  • 相关阅读:
    C++数字与字符串相互转化
    NextDate问题
    Mac使用host屏蔽某指定网站
    Pycharm里面使用anaconda配置环境
    Logisim
    XML有关知识
    Mac环境下的Tomcat
    Allow apps downloaded from Anywhere
    寻找两数之和
    最大子序列
  • 原文地址:https://www.cnblogs.com/tsboy/p/8118653.html
Copyright © 2011-2022 走看看