• 函数&语法


    定义一个函数

    加上一些算法,由自己定义的函数,以下是简单的规则:

    • 函数代码块以 def 关键词开头,后接函数标识符名称和圆括号 ()
    • 任何传入参数和自变量必须放在圆括号中间,圆括号之间可以用于定义参数。
    • 函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明。
    • 函数内容以冒号起始,并且缩进。
    • return [表达式] 结束函数,选择性地返回一个值给调用方。不带表达式的return相当于返回 None。
      ##定义一个函数,两个人年龄的和
      
      def fan_age(qiao,yan):  #给自定义的函数设定参数
          return(qiao+yan)  #在函数体内赋予算法
      
      def fan_name(name_1,name_2):
          return("hello:",name_2)
      #  print("hello:",name_2) # 自定义函数不带return表达式,会在结果时返回一个None
      q=26
      y=24 
      print(fan_name("","桥,燕"),"两人年龄相加为:",fan_age(q,y))  #利用自己所定义的函数实现功能吧!

    def 函数名(参数列表):

    ##定义一个函数,两个人年龄的和
    
    def fan_age(qiao,yan):  #给自定义的函数设定参数
        return(qiao+yan)  #在函数体内赋予算法
    
    def fan_name(name_1,name_2):
        return("hello:",name_2)  #,在return返回时把结果传入一个参数1,参数2在你调用函数时传入
    #  print("hello:",name_2) # 自定义函数不带return表达式,会在结果时返回一个None
    q=26
    y=24 
    print(fan_name("","桥,燕"),"两人年龄相加为:",fan_age(q,y))  #利用自己所定义的函数实现功能吧!

     

    传可变对象实例

    可变对象在函数里修改了参数,那么在调用这个函数的函数里,原始的参数也被改变了。例如:
    def changeme(mylist):
        "修改传入的列表"
        mylist.append([1,2,3,4]);
        print ("函数内取值: ", mylist)
        return(mylist);
    mylist = [10,20,30]
    print("函数外%s "%"取值:",changeme(mylist),)

    #参数组:*args(列表) **kwargs字典

    def li(x,*args,**kwargs):#形参
        print(x)
        print(args)
        print(kwargs)
    
    li(1,"q,w,e",y=2,z=3)#调用函数

    默认参数

    调用函数时,如果没有传递参数,则会使用默认参数。以下实例中如果没有传入 age 参数,则使用默认值:

    def info(name,age=25):#形参是没被定义,也不占内存的.age是实参,后面调用函数没有定义age,这里将使用默认的实参
       print(name)#调用函数后, 将函数内取到实参所传递的值打印出来
       print(age)#如果没有传递参数,则会使用默认参数
       return;
    info(
    "qiao")#调用函数,实参没有被重新定义,将使用默认实参值 print("___________") info("qiao",age=26)#调用函数,参数将一一对应,第二位参数被重新定义

    输出结果:
    qiao
    25
    ___________
    qiao
    26



  • 相关阅读:
    smtplib.py
    淘宝链接中的spm参数
    with 上下文管理
    python RecursionError: maximum recursion depth exceeded while calling
    GraphQL两年实战
    Exception 异常处理
    Simple decorator that intercepts connection errors and ignores these if settings specify this.
    namedtuple
    服务治理在猫眼娱乐的演进之路
    路由、限流、熔断 微服务治理
  • 原文地址:https://www.cnblogs.com/zhiqiao/p/8661349.html
Copyright © 2020-2023  润新知