ITPub博客

首页 > 应用开发 > Python > 好程序员Python培训分享函数的定义与使用示例

好程序员Python培训分享函数的定义与使用示例

原创 Python 作者:好程序员 时间:2020-12-01 15:34:39 0 删除 编辑

   好程序员Python 培训分享函数的定义与使用示例 , 结合实例形式分析了 Python 函数的定义、参数、变量作用域、返回值等相关概念与使用技巧。

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

def 函数名(参数列表):

     函数体

 

让我们使用函数来输出"HelloWorld "

 

>>> 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



来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/69913864/viewspace-2738514/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-03-20

  • 博文量
    342
  • 访问量
    155234