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 相关文章推荐
深入解析Python中的descriptor描述器的作用及用法
Jun 27 Python
使用Python+Splinter自动刷新抢12306火车票
Jan 03 Python
python-itchat 获取微信群用户信息的实例
Feb 21 Python
Python面向对象程序设计之类的定义与继承简单示例
Mar 18 Python
分析运行中的 Python 进程详细解析
Jun 22 Python
Python3+Appium实现多台移动设备操作的方法
Jul 05 Python
Python使用ffmpy将amr格式的音频转化为mp3格式的例子
Aug 08 Python
如何解决django-celery启动后迅速关闭
Oct 16 Python
计算Python Numpy向量之间的欧氏距离实例
May 22 Python
Python QTimer实现多线程及QSS应用过程解析
Jul 11 Python
利用Python判断整数是否是回文数的3种方法总结
Jul 07 Python
Python编程根据字典列表相同键的值进行合并
Oct 05 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实现像JSP,ASP里Application那样的全局变量
2007/01/12 PHP
php set_time_limit(0) 设置程序执行时间的函数
2010/05/26 PHP
培养自己的php编码规范
2015/09/28 PHP
Ubuntu VPS中wordpress网站打开时提示”建立数据库连接错误”的解决办法
2016/11/03 PHP
php与c 实现按行读取文件实例代码
2017/01/03 PHP
PHP数组访问常用方法解析
2020/09/05 PHP
javascript获取选中的文本的方法代码
2013/10/30 Javascript
js中的如何定位固定层的位置
2014/06/15 Javascript
浅谈Javascript Base64 加密解密
2014/12/28 Javascript
JavaScript实现简单图片翻转的方法
2015/04/17 Javascript
浅谈Node.js中的定时器
2015/06/18 Javascript
深入解析JavaScript中的立即执行函数
2016/05/21 Javascript
深入理解jQuery 事件处理
2016/06/14 Javascript
js轮盘抽奖实例分析
2020/04/17 Javascript
通过BootStrap-select插件 js jQuery控制select属性变化
2017/01/03 Javascript
EasyUi 打开对话框后控件赋值及赋值后不显示的问题解决办法
2017/01/19 Javascript
Javascript之图片的延迟加载的实例详解
2017/07/24 Javascript
微信小程序移动拖拽视图-movable-view实例详解
2019/08/17 Javascript
vue移动端的左右滑动事件详解
2020/06/17 Javascript
使用IPython下的Net-SNMP来管理类UNIX系统的教程
2015/04/15 Python
django2+uwsgi+nginx上线部署到服务器Ubuntu16.04
2018/06/26 Python
Python读取excel中的图片完美解决方法
2018/07/27 Python
python中从for循环延申到推导式的具体使用
2019/11/29 Python
基于python-pptx库中文文档及使用详解
2020/02/14 Python
Python异常继承关系和自定义异常实现代码实例
2020/02/20 Python
Scrapy中如何向Spider传入参数的方法实现
2020/09/28 Python
Python爬取豆瓣数据实现过程解析
2020/10/27 Python
CSS3中border-radius属性设定圆角的使用技巧
2016/05/10 HTML / CSS
CSS3制作3D立方体loading特效
2020/11/09 HTML / CSS
阿提哈德航空官方网站:Etihad Airways
2017/01/06 全球购物
中国医药集团国药在线:国药网
2017/02/06 全球购物
简述你对Statement,PreparedStatement,CallableStatement的理解
2013/03/25 面试题
旅游管理毕业生自荐信范文
2014/03/19 职场文书
电大毕业个人生自我鉴定
2014/03/26 职场文书
公司领导班子召开党的群众路线教育实践活动总结大会新闻稿
2014/10/21 职场文书
2015个人简历自我评价语
2015/03/11 职场文书