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


Posted in Python onMarch 23, 2019

本文实例讲述了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 相关文章推荐
wxPython事件驱动实例详解
Sep 28 Python
python版本的读写锁操作方法
Apr 25 Python
深入浅出分析Python装饰器用法
Jul 28 Python
快速入门python学习笔记
Dec 06 Python
详解python分布式进程
Oct 08 Python
Django使用AJAX调用自己写的API接口的方法
Mar 06 Python
Python时间序列处理之ARIMA模型的使用讲解
Apr 02 Python
解决python3中的requests解析中文页面出现乱码问题
Apr 19 Python
Django Sitemap 站点地图的实现方法
Apr 29 Python
使用PyCharm进行远程开发和调试的实现
Nov 04 Python
Python Web静态服务器非堵塞模式实现方法示例
Nov 21 Python
jupyter notebook 实现matplotlib图动态刷新
Apr 22 Python
详解用Python练习画个美队盾牌
Mar 23 #Python
详解python中TCP协议中的粘包问题
Mar 22 #Python
Python JSON格式数据的提取和保存的实现
Mar 22 #Python
Python3.4解释器用法简单示例
Mar 22 #Python
Python常见数字运算操作实例小结
Mar 22 #Python
详解python校验SQL脚本命名规则
Mar 22 #Python
pymongo中group by的操作方法教程
Mar 22 #Python
You might like
PHP数据库操作面向对象的优点
2006/10/09 PHP
十天学会php(2)
2006/10/09 PHP
网站当前的在线人数
2006/10/09 PHP
source.php查看源文件
2006/12/09 PHP
PHP判断浏览器、判断语言代码分享
2015/03/05 PHP
PHP YII框架开发小技巧之模型(models)中rules自定义验证规则
2015/11/16 PHP
详解WordPress中简码格式标签编写的基本方法
2015/12/22 PHP
ThinkPHP 5 AJAX跨域请求头设置实现过程解析
2020/10/28 PHP
JavaScript 操作键盘的Enter事件(键盘任何事件),兼容多浏览器
2010/10/11 Javascript
Javascript处理DOM元素事件实现代码
2012/05/23 Javascript
解析Jquery的LigerUI如何实现文件上传
2013/07/09 Javascript
将文本输入框内容加入表中的js代码
2013/08/18 Javascript
什么是 AngularJS?AngularJS简介
2014/12/06 Javascript
AngularJS快速入门
2015/04/02 Javascript
jQuery构造函数init参数分析续
2015/05/13 Javascript
JSON 数据详解及实例代码分析
2017/01/20 Javascript
使用重写url机制实现验证码换一张功能
2017/08/01 Javascript
使用JavaScript实现一个小程序之99乘法表
2017/09/21 Javascript
js实现搜索栏效果
2018/11/16 Javascript
vue实现移动端轻量日期组件不依赖第三方库的方法
2019/04/28 Javascript
vue实现信息管理系统
2020/05/30 Javascript
Python解决八皇后问题示例
2018/04/22 Python
Python3安装Pillow与PIL的方法
2019/04/03 Python
使用Windows批处理和WMI设置Python的环境变量方法
2019/08/14 Python
Python3变量与基本数据类型用法实例分析
2020/02/14 Python
Python爬虫爬取、解析数据操作示例
2020/03/27 Python
使用数据结构给女朋友写个Html5走迷宫游戏
2019/11/26 HTML / CSS
幼儿园大班毕业感言
2014/02/06 职场文书
2014年五四青年节演讲比赛方案
2014/04/22 职场文书
公证委托书
2014/08/01 职场文书
学习朴航瑛老师爱岗敬业先进事迹思想汇报
2014/09/17 职场文书
表扬稿格式范文
2015/01/16 职场文书
中学生学习保证书
2015/02/26 职场文书
2015年仓库工作总结
2015/04/09 职场文书
先进个人事迹材料(2016推荐版)
2016/03/01 职场文书
springboot @ConfigurationProperties和@PropertySource的区别
2021/06/11 Java/Android