Python基础之函数的定义与使用示例
Python  /  管理员 发布于 7年前   114
本文实例讲述了Python基础之函数的定义与使用。分享给大家供大家参考,具体如下:
Python 定义函数使用 def 关键字,一般格式如下:
def 函数名(参数列表):
函数体
让我们使用函数来输出"Hello World!":
>>> def hello() : print("Hello World!")>>> hello()Hello World!>>>
更复杂点的应用,函数中带上参数变量:
def area(width, height): return width * heightdef print_welcome(name): print("Welcome", name)print_welcome("Fred")w = 4h = 5print("width =", w, " height =", h, " area =", area(w, h))
以上实例输出结果:
Welcome Fred
width = 4 height = 5 area = 20
函数变量作用域
定义在函数内部的变量拥有一个局部作用域,定义在函数外的拥有全局作用域。通过以下实例,你可以清楚了解Python函数变量的作用域:
#!/usr/bin/env python3a = 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 argumentparrot(voltage=1000) # 1 keyword argumentparrot(voltage=1000000, action='VOOOOOM') # 2 keyword argumentsparrot(action='VOOOOOM', voltage=1000000) # 2 keyword argumentsparrot('a million', 'bereft of life', 'jump') # 3 positional argumentsparrot('a thousand', state='pushing up the daisies') # 1 positional, 1 keyword
以下为错误调用方法:
parrot() # required argument missingparrot(voltage=5.0, 'dead') # non-keyword argument after a keyword argumentparrot(110, voltage=220) # duplicate value for the same argumentparrot(actor='John Cleese') # unknown keyword argument
返回值
Python的函数的返回值使用return
语句,可以将函数作为一个值赋值给指定变量:
def return_sum(x,y): c = x + y return cres = 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 sumprint(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程序设计有所帮助。
122 在
学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号