• Python3 函数


    Python 定义函数使用 def 关键字,一般格式如下:

    def  函数名(参数列表):
        函数体
    

    让我们使用函数来输出"Hello World!":

    >>> def hello() :
      print("Hello World!")
    
     
    >>> hello()
    Hello World!
    >>> 
    

    更复杂点的应用,函数中带上参数变量:

    def area(width, height):
        return width * height
     
    def print_welcome(name):
        print("Welcome", name)
    
    print_welcome("Fred")
    w = 4
    h = 5
    print("width =", w, " height =", h, " area =", area(w, h))
    

    以上实例输出结果:

    Welcome Fred
    width = 4  height = 5  area = 20
    

    函数变量作用域

    定义在函数内部的变量拥有一个局部作用域,定义在函数外的拥有全局作用域。

    通过以下实例,你可以清楚了解Python函数变量的作用域:

    #!/usr/bin/env python3
    a = 4  # 全局变量
     
    def print_func1():
        a = 17 # 局部变量
        print("in print_func a = ", a)
    def print_func2():   
        print("in print_func a = ", a)
    print_func1()
    print_func2()
    print("a = ", a) 
    

    以上实例运行结果如下:

    in print_func a =  17
    in print_func a =  4
    a =  4
    

    关键字参数

    函数也可以使用 kwarg=value 的关键字参数形式被调用.例如,以下函数:

    def parrot(voltage, state='a stiff', action='voom', type='Norwegian Blue'):
        print("-- This parrot wouldn't", action, end=' ')
        print("if you put", voltage, "volts through it.")
        print("-- Lovely plumage, the", type)
        print("-- It's", state, "!")
    

    可以以下几种方式被调用:

    parrot(1000)                                          # 1 positional argument
    parrot(voltage=1000)                                  # 1 keyword argument
    parrot(voltage=1000000, action='VOOOOOM')             # 2 keyword arguments
    parrot(action='VOOOOOM', voltage=1000000)             # 2 keyword arguments
    parrot('a million', 'bereft of life', 'jump')         # 3 positional arguments
    parrot('a thousand', state='pushing up the daisies')  # 1 positional, 1 keyword
    

    以下为错误调用方法:

    parrot()                     # required argument missing
    parrot(voltage=5.0, 'dead')  # non-keyword argument after a keyword argument
    parrot(110, voltage=220)     # duplicate value for the same argument
    parrot(actor='John Cleese')  # unknown keyword argument
    

    返回值

    Python的函数的返回值使用return语句,可以将函数作为一个值赋值给指定变量:

    def return_sum(x,y):
        c = x + y
        return c
    
    res = return_sum(4,5)
    print(res)
    

    你也可以让函数返回空值:

    def empty_return(x,y):
        c = x + y
        return
    
    res = empty_return(4,5)
    print(res)
    

    可变参数列表

    最后,一个最不常用的选择是可以让函数调用可变个数的参数.这些参数被包装进一个元组(查看元组和序列).在这些可变个数的参数之前,可以有零到多个普通的参数:

    def arithmetic_mean(*args):
        sum = 0
        for x in args:
            sum += x
        return sum
    
    print(arithmetic_mean(45,32,89,78))
    print(arithmetic_mean(8989.8,78787.78,3453,78778.73))
    print(arithmetic_mean(45,32))
    print(arithmetic_mean(45))
    print(arithmetic_mean())
    

    以上实例输出结果为:

    244
    170009.31
    77
    45
    0
    
  • 相关阅读:
    Solon 1.6.36 发布,更现代感的应用开发框架
    OrchardCore Headless建站拾遗
    阿里云IoT流转到postgresql数据库方案
    C#中检查null的语法糖
    [翻译] 使用 TensorFlow 进行分布式训练
    [源码解析] TensorFlow 分布式之 MirroredStrategy
    [源码解析] TensorFlow 分布式 DistributedStrategy 之基础篇
    [源码解析] TensorFlow 之 分布式变量
    WebSocket 协议详解
    golang常用库包:Go依赖注入(DI)工具wire使用
  • 原文地址:https://www.cnblogs.com/navysummer/p/8454727.html
Copyright © 2020-2023  润新知