zoukankan      html  css  js  c++  java
  • python----函数

    一:函数的定义

                              def关键字开头,空格加函数名加圆括号最后加冒号-------------------------def innner():

                              函数名:只能包含字符串,字母,数字下划线,并且不能用数字开头。

    二:函数的调用

                         无返回值:函数名+括号-----------------------------------inner()

                         有返回值:变量名=函数名()------------------------------ret1=inner()

                        多个变量接收多个返回值:变量名1,变量名2.......=函数名()--------------ret1=inner()

                                                                                                                                      ret2=timer()

            圆括号用来接收参数。
            若传入多个参数:
            应按先位置传值,再按关键字传值
            具体的传入顺序应按照函数定义的参数情况而定
    ef wukong():
        return 1,2,3,4,5
    def bajie():
        return 'hello word',4,['hwbhwb','jwjjwbdjwbd',{'jsbcjsbj':'bxhbxbwhxbw'}]
    ret1=wukong()
    print(ret1)
    ret2=bajie()
    print(ret2)

    (1, 2, 3, 4, 5)
    ('hello word', 4, ['hwbhwb', 'jwjjwbdjwbd', {'jsbcjsbj': 'bxhbxbwhxbw'}])

    #函数的定义
    def mylen():
        s1='hello word'
        length=0
        for i in s1:
            length=length+1
        print(length)
    #函数的调用
    wode_len=mylen()
    print(wode_len)

       10
       None

    
    

    三:函数的返回值

         return关键字:是返回的意思,return后面的值就是返回值。

         有返回值:定义变量接收返回值。

         多个返回值:定义多个变量接收,变量数和返回值应一致。

         没有返回值:不写return的情况下,默认返回一个None.

                            只写return不写其他内容,也会返回None。(一旦遇到return,就结束函数)   

                return[表达式] 结束函数。不带表达式的return相当于返回 None
    
                def 函数名(参数1,参数2,*args,默认参数,**kwargs)
                return 返回值            
    def ret_demo():
        print(111)
        return
        print(222)
    
    ret = ret_demo()
    print(ret)

        111
        None

    
    

     四:参数

            实参:在定义函数时调用的。

                       参数种类与传递顺序:

                                               按位置传参:*()或*[]可传多个位置参数。

                                                按关键字传参:**{}的形式可传多个关键字参数。

      按位置传递多个参数。

    def mymax(x,y):
        the_max=x if x > y else y
        return the_max
    ma=mymax(10,20)
    print(ma)

    20

              按关键字传参

    ef mymax(x,y):
    print(x,y)
    the_max=x if x > y else y
    return the_max
    ma=mymax(x=100,y=120)
    print(ma)

            100 120
            120

           

                 

                       

            形参:在调用函数时接收的。

                        参数种类与定义顺序:

                                                位置参数:

                                                动态*args参数:接收多个位置参数,并组织成元祖。没有值则为()

                                                动态**wkargs参数:接收多个位置参数,并组织成字典。没有值则为{}

                                                默认参数:设置默认值,调用时可以不传参数。定义不可变数据类型。

                                          (位置参数必须在关键字参数前面,每个参数只能赋值一次。

               默认参数

    def my_info(name,sex='male'):#设定默认参数
        print(name,sex)
    my_info('wang',)
    my_info('xie','female')
    
    
    
          wang male
          xie female

           *args 动态传参

          

    
    
    def mysum(*args):
    print(args)
    mysum(1,2,3)
    
    


    (1, 2, 3)

     

         动态**kwargs

    def my_info(**kwargs):
        print(kwargs)
    my_info(name='wangshanglong',sex='male')

    {'name': 'wangshanglong', 'sex': 'male'}

          作业:

    #1 、写函数,计算传入字符串中【数字】、【字母】、【空格] 以及 【其他】的个数
    def my_len(msg):                          #----定义函数----
        sz=zm=kg=qt=0
        for i in msg:
            if i.isdigit():
                sz+=1
            elif i.isalpha():
                zm+=1
            elif i.isspace():
                kg+=1
            else:
                qt+=1
        return sz,zm,kg,qt
    m = my_len('fwi,445151518484, ,-----###$^R&^')
    print(m)
       
                                     (12, 4, 1, 15)
     3、写函数,判断用户传入的对象(字符串、列表、元组)长度是否大于5。
    def my_len(s): #----定义函数------
        if len(s) > 5:#----判断s的长度是否大于5------
            return True#---是-----
        else:
            return False#----否---
    s=my_len('[kwmk,iwmcimw,icwiciw,]')#-----调用my_len,并传递参数----
    print(s)#------打印s------
                                 
                                 
                                         True
    def my_len(s):#----定义函数----
        if len(s)>2:#----判断s是否大于2----
            return s[0:2]#----大于2保留前两位----
        else:
            return s#----小于2返回给调用者----
    s=my_len(['xua',789,{'name':'wang'}])#----调用并传递参数----
    print(s)#----打印----
    
                          
                             ['xua', 789]
  • 相关阅读:
    激活函数
    C++ 三大属性之多态
    C++ 编译运行过程
    优化方法
    目标检测中的IOU
    pytorch 单机多gpu运行
    WSAEventSelect网络模型
    根据数组中的索引删除对应的值
    从以下几点提高服务器并发量
    std::function
  • 原文地址:https://www.cnblogs.com/w-s-l123/p/7256052.html
Copyright © 2011-2022 走看看