当前位置:
首页 > Python基础教程 >
-
Python3 函数
Python 函数
本章节我们将为大家介绍Python中函数的应用。
该章节可参阅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
栏目列表
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
SQL SERVER中递归
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
这是目前我见过最好的跨域解决方案!
减少回流与重绘
减少回流与重绘
如何使用KrpanoToolJS在浏览器切图
performance.now() 与 Date.now() 对比
一款纯 JS 实现的轻量化图片编辑器
关于开发 VS Code 插件遇到的 workbench.scm.
前端设计模式——观察者模式
前端设计模式——中介者模式
创建型-原型模式