Python的函数参数
2015-08-17 20:09
627 查看
python定义函数的格式如下:
def function: #inner
python的函数参数有如下几种方式:
1. 无参
无参函数即声明和调用时都不用提供参数的函数。def function: print ("Hello World!")
输出:
Hello World!
2. 定参
定参即有固定参数,函数声明时有几个参数,在调用时就要提供相匹配的参数,
若不匹配则报错
def function (arg1,arg2): print ("arg1:",arg1,"arg2:",arg2) function (1,2)
输出:
arg1: 1 arg2: 2
3. 默认参数
函数在声明时提供默认参数,调用时若不给于默认参数,则使用函数定义时的默认参数
若给予默认参数以其他参数,则其他参数覆盖默认参数
def function (name,sex,country="China"): print ("name:",name,"sex:",sex,"country:",country) function('xiaoming','boy') function('xiaohong','gril','America')
输出:
name: xiaoming sex: boy: country China
name: xiaohong sex: gril: country America
4. 可变参数
可变参数,即在定义函数时在参数前加上“*”在调用函数时,可以给其传入不定量的参数
也可以在list或tuple的引用前面加上“*”作为参数传入
可变参数在调用时总会把传入的参数转变成tuple
def function (*args): sum = 0 for i in args: sum+=i return sum print ( function(1,2,3,4,5) ) list = [1,2,3,4,5] print ( function(*list) ) tuple = (1,2,3,4,5) print ( function(*tuple) )
输出:
15
15
15
5. 关键字参数
关键字参数,即在定义函数时在参数前加上“**”在调用函数时可以以
key = value的形式传入不定量参数
也可以在dic的引用前面加上“**”作为参数传入
关键字参数函数在调用时会把传入的参数转变成dic
def function3 (**args): print (args['name'],'=>',args['sex']) function3(name="xiaoming",sex="boy") dic = {"name":"xiaohong","sex":"gril"} function3(**dic) dic2 = {"name":"xiaohong","sex":"gril","country":"America"} function3(**dic2)
输出:
xiaoming => boy
xiaoming => boy
xiaoming => boy
6. 命名关键字
命名关键字是为了限制传入参数的名字命名关键字的形式为
(...,*,arg1,arg2...)或
(*,arg1,arg2,...)
调用函数时必须传入指定名称的参数(若包含默认参数则除外),不然会报错
def function (name,*,sex="boy",country): print ("name:",name,"sex:",sex,"country:",country) function ("xiaoming",country="China") function ("xiaohong",sex="girl",country="America")
输出:
name: xiaoming sex: boy country: China
name: xiaohong sex: girl country: America
相关文章推荐
- Python动态类型的学习---引用的理解
- Python3写爬虫(四)多线程实现数据爬取
- 垃圾邮件过滤器 python简单实现
- 下载并遍历 names.txt 文件,输出长度最长的回文人名。
- install and upgrade scrapy
- Scrapy的架构介绍
- Centos6 编译安装Python
- 使用Python生成Excel格式的图片
- 让Python文件也可以当bat文件运行
- [Python]推算数独
- Python中zip()函数用法举例
- Python中map()函数浅析
- Python将excel导入到mysql中
- Python在CAM软件Genesis2000中的应用
- 使用Shiboken为C++和Qt库创建Python绑定
- FREEBASIC 编译可被python调用的dll函数示例
- Python 七步捉虫法