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基础之函数用法实例详解
Sep 10 Python
将Django框架和遗留的Web应用集成的方法
Jul 24 Python
利用Python中的pandas库对cdn日志进行分析详解
Mar 07 Python
Python实现字符串与数组相互转换功能示例
Sep 22 Python
对pandas进行数据预处理的实例讲解
Apr 20 Python
Python查找第n个子串的技巧分享
Jun 27 Python
TensorFlow实现iris数据集线性回归
Sep 07 Python
python3连接MySQL8.0的两种方式
Feb 17 Python
配置python的编程环境之Anaconda + VSCode的教程
Mar 29 Python
python中tab键是什么意思
Jun 18 Python
pytorch 实现在测试的时候启用dropout
May 27 Python
如何基于python实现单目三维重建详解
Jun 25 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
怎样在UNIX系统下安装MySQL
2006/10/09 PHP
探讨:如何编写PHP扩展
2013/06/13 PHP
比较strtr, str_replace和preg_replace三个函数的效率
2013/06/26 PHP
PHP中的常见魔术方法功能作用及用法实例
2015/07/01 PHP
如何打开php的gd2库
2017/02/09 PHP
[转]JS宝典学习笔记
2007/02/07 Javascript
关于onchange事件在IE和FF下的表现及解决方法
2014/03/08 Javascript
jquery form 加载数据示例
2014/04/21 Javascript
IE8中使用javascript动态加载CSS的解决方法
2014/06/17 Javascript
JS组件Bootstrap Table布局详解
2016/05/27 Javascript
用AngularJS的指令实现tabs切换效果
2016/08/31 Javascript
利用vue实现模态框组件
2016/12/19 Javascript
解决Vue不能检测数组或对象变动的问题
2018/02/24 Javascript
浅谈如何使用webpack构建多页面应用
2018/05/30 Javascript
基于vue写一个全局Message组件的实现
2019/08/15 Javascript
js正则匹配多个全部数据问题
2019/12/20 Javascript
JS使用Chrome浏览器实现调试线上代码
2020/07/23 Javascript
[02:34]DOTA2英雄基础教程 幽鬼
2014/01/02 DOTA
在django中使用自定义标签实现分页功能
2017/07/04 Python
python和ruby,我选谁?
2017/09/13 Python
python numpy和list查询其中某个数的个数及定位方法
2018/06/27 Python
Flask框架使用DBUtils模块连接数据库操作示例
2018/07/20 Python
python自制包并用pip免提交到pypi仅安装到本机【推荐】
2019/06/03 Python
Python使用matplotlib绘制Logistic曲线操作示例
2019/11/28 Python
python实现坦克大战
2020/04/24 Python
Python安装Bs4的多种方法
2020/11/28 Python
纯CSS3打造属于自己的“小黄人”
2016/03/14 HTML / CSS
canvas拼图功能实现代码示例
2018/11/21 HTML / CSS
英国家电直销:Appliances Direct
2016/09/22 全球购物
英国在线药房和在线药剂师:Chemist 4 U
2020/01/05 全球购物
迪卡侬印尼体育用品商店:Decathlon印尼
2020/03/11 全球购物
办公室主任职责范文
2013/11/08 职场文书
演讲比赛策划方案
2014/06/11 职场文书
乡镇机关党员民主评议表自我评价
2014/09/21 职场文书
斗罗大陆八大特殊魂兽,龙族始祖排榜首,第五最残忍(翠魔鸟)
2022/03/18 国漫
css之clearfix的用法深入理解(必看篇)
2023/05/21 HTML / CSS