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深入学习之装饰器
Aug 31 Python
Python中的生成器和yield详细介绍
Jan 09 Python
python实现发送邮件功能代码
Dec 14 Python
python smtplib模块实现发送邮件带附件sendmail
May 22 Python
tensorflow 输出权重到csv或txt的实例
Jun 14 Python
python实现在cmd窗口显示彩色文字
Jun 24 Python
用python打印1~20的整数实例讲解
Jul 01 Python
pytorch forward两个参数实例
Jan 17 Python
python输入一个水仙花数(三位数) 输出百位十位个位实例
May 03 Python
Python函数必须先定义,后调用说明(函数调用函数例外)
Jun 02 Python
浅谈Django前端后端值传递问题
Jul 15 Python
Python合并多张图片成PDF
Jun 09 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遍历数组的方法汇总
2015/04/30 PHP
BOOM vs RR BO5 第一场 2.14
2021/03/10 DOTA
HTML-CSS群中单选引发的“事件”
2007/03/05 Javascript
JS window.opener返回父页面的应用
2009/10/24 Javascript
javascript 面向对象全新理练之继承与多态
2009/12/03 Javascript
innerHTML 和 getElementsByName 在IE下面的bug 的解决
2010/04/09 Javascript
JavaScript Date对象 日期获取函数
2010/12/19 Javascript
js replace正则表达式应用案例讲解
2013/01/17 Javascript
js播放wav文件(源码)
2013/04/22 Javascript
javascript窗口宽高,鼠标位置,滚动高度(详细解析)
2013/11/18 Javascript
JavaScript返回网页中锚点数目的方法
2015/04/03 Javascript
Angularjs material 实现搜索框功能
2016/03/08 Javascript
Seajs 简易文档 提供简单、极致的模块化开发体验
2016/04/13 Javascript
js H5 canvas投篮小游戏
2016/08/18 Javascript
用原生js统计文本行数的简单示例
2016/08/19 Javascript
AngularJS之自定义服务详解(factory、service、provider)
2017/04/14 Javascript
详解webpack+angular2开发环境搭建
2017/06/28 Javascript
通过JQuery,JQueryUI和Jsplumb实现拖拽模块
2019/06/18 jQuery
vue-router之解决addRoutes使用遇到的坑
2020/07/19 Javascript
Javascript中的奇葩知识,你知道吗?
2021/01/25 Javascript
[09:59]DOTA2-DPC中国联赛2月7日Recap集锦
2021/03/11 DOTA
用python实现的可以拷贝或剪切一个文件列表中的所有文件
2009/04/30 Python
Python中os.path用法分析
2015/01/15 Python
Python字符串中查找子串小技巧
2015/04/10 Python
Python聊天室实例程序分享
2016/01/05 Python
黑科技 Python脚本帮你找出微信上删除你好友的人
2016/01/07 Python
Python解析、提取url关键字的实例详解
2018/12/17 Python
会计专业大学生职业生涯规划书
2014/02/11 职场文书
工程材料采购方案
2014/05/18 职场文书
教师个人读书活动总结
2014/07/08 职场文书
2014年话务员工作总结
2014/11/19 职场文书
2015年青年志愿者工作总结
2015/05/20 职场文书
2016年教师党员承诺书范文
2016/03/24 职场文书
古诗之感恩老师
2019/10/24 职场文书
我家女友可不止可爱呢 公开OP主题曲无字幕动画MV
2022/04/11 日漫
Golang ort 中的sortInts 方法
2022/04/24 Golang