知行编程网知行编程网  2023-01-11 18:00 知行编程网 隐藏边栏  2 
文章评分 0 次,平均分 0.0
导语: 本文主要介绍了关于python3函数的相关知识,包括python类函数调用,以及python函数调用这些编程知识,希望对大家有参考作用。

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


返回值

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

本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

知行编程网
知行编程网 关注:1    粉丝:1
这个人很懒,什么都没写
扫一扫二维码分享