Python基础之函数的定义与使用示例

 更新时间:2019年03月23日 09:24:26   作者:流年醉影  
这篇文章主要介绍了Python基础之函数的定义与使用,结合实例形式分析了Python函数的定义、参数、变量作用域、返回值等相关概念与使用技巧,需要的朋友可以参考下

本文实例讲述了Python基础之函数的定义与使用。分享给大家供大家参考,具体如下:

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

关于Python相关内容感兴趣的读者可查看本站专题:《Python函数使用技巧总结》、《Python面向对象程序设计入门与进阶教程》、《Python数据结构与算法教程》、《Python字符串操作技巧汇总》、《Python编码操作技巧总结》及《Python入门与进阶经典教程

希望本文所述对大家Python程序设计有所帮助。

相关文章

  • Python自动化测试之异常处理机制实例详解

    Python自动化测试之异常处理机制实例详解

    为了保持自动化测试用例的健壮性,异常的捕获及处理,日志的记录对掌握自动化测试执行情况尤为重要,下面这篇文章主要给大家介绍了关于Python自动化测试之异常处理机制的相关资料,需要的朋友可以参考下
    2022-06-06
  • numpy如何按条件给元素赋值np.where、np.clip

    numpy如何按条件给元素赋值np.where、np.clip

    这篇文章主要介绍了numpy如何按条件给元素赋值np.where、np.clip问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-06-06
  • Python群发邮件实例代码

    Python群发邮件实例代码

    今天试了试Python发邮件,突然想到能不能群发邮件呢?群发邮件是smtplib的一个bug,不过最终还是解决了
    2014-01-01
  • Python解决抛小球问题 求小球下落经历的距离之和示例

    Python解决抛小球问题 求小球下落经历的距离之和示例

    这篇文章主要介绍了Python解决抛小球问题 求小球下落经历的距离之和,涉及Python基于递归的数值计算相关操作技巧,需要的朋友可以参考下
    2018-02-02
  • Python如何有效地使用迭代

    Python如何有效地使用迭代

    这篇文章主要为大家详细介绍了Python如何有效地使用迭代,文中的示例代码讲解详细,对我们深入了解Python有一定的帮助,需要的小伙伴可以学习一下
    2023-09-09
  • 给 TensorFlow 变量进行赋值的方式

    给 TensorFlow 变量进行赋值的方式

    今天小编就为大家分享一篇给 TensorFlow 变量进行赋值的方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-02-02
  • python 定时修改数据库的示例代码

    python 定时修改数据库的示例代码

    这篇文章主要介绍了python 定时修改数据库的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-04-04
  • python和bash统计CPU利用率的方法

    python和bash统计CPU利用率的方法

    这篇文章主要介绍了python和bash统计CPU利用率的方法,涉及Python针对系统硬件信息的读取技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-07-07
  • 解决python3中的requests解析中文页面出现乱码问题

    解决python3中的requests解析中文页面出现乱码问题

    requests是一个很实用的Python HTTP客户端库,编写爬虫和测试服务器响应数据时经常会用到。这篇文章给大家介绍了解决python3中的requests解析中文页面出现乱码问题,感兴趣的朋友一起看看吧
    2019-04-04
  • 详解Python列表extend()函数使用方法

    详解Python列表extend()函数使用方法

    这篇文章主要介绍了Python列表extend()函数的使用方法,文章通过代码示例介绍的非常详细,对我们学习或工作有一定的参考价值,需要的朋友可以参考下
    2023-07-07

最新评论