鱼C论坛

 找回密码
 立即注册
查看: 1814|回复: 0

[技术交流] 018讲总结

[复制链接]
发表于 2017-7-27 17:58:16 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
函数的参数
函数的参数可分为形参和实参
函数定义过程中在函数变量名后面括号中的就是形参。而调用时传递进去、真正输入进去的叫做实参,其为具体的参数值。如:
>>> def MyFirstFunction(name):
        '函数定义过程中的name是叫形参'
        #因为Ta只是一个形式,表示占据一个参数位置
        print('传递进来的' + name + '叫做实参,因为Ta是具体的参数值!')
>>> MyFirstFunction('小甲鱼')
传递进来的小甲鱼叫做实参,因为Ta是具体的参数值!

函数文档:紧跟在函数定义下面的起注释作用的字符串(用英文引号引起来)。如上例中的打码的第二行即为函数文档。调用函数文档方法: 函数变量名 + “.” + “__”+ doc + “__”。如:
>>> MyFirstFunction.__doc__
'函数定义过程中的name是叫形参'

关键字参数:在调用函数时为形参赋值以增加区别度,可用于调换实际输入参数与形参的对应位置。如:
>>> def SaySome(name, words):
        print(name + '->' + words)
>>> SaySome(words = '让编程改变世界',name = '小甲鱼')
小甲鱼->让编程改变世界

默认参数:在定义函数时为形参赋值。而在调用时若不带实际参数,py会自动寻找定义时赋的值来返回;若调用时带实际参数,py会用实际参数的值将定义时为形参赋的值覆盖。如:
>>> def SaySome(name = '小甲鱼',words = '让编程改变世界!'):
        print(name + '->' +words)
>>> SaySome()
小甲鱼->让编程改变世界!
>>> SaySome('苍井空','我脱光衣服躺在镜头前,是为了生存,而你衣冠楚楚的站在镜头前,却只是为了私欲和欺骗!')
苍井空->我脱光衣服躺在镜头前,是为了生存,而你衣冠楚楚的站在镜头前,却只是为了私欲和欺骗!

收集参数(可变参数):打包调用函数时输入的多个参数变成一个元组,元组变量名就是“*” + 可变参数变量名。如:
>>> def test(*params):
        print('参数的长度是:',len(params));
        print('第二个参数是:',params[1]);
>>> test(1, '小甲鱼',3.14, 5, 6, 7, 8)
参数的长度是: 7
第二个参数是: 小甲鱼
>>> def test(*params, exp):
        print('参数的长度是:',len(params));
        print('第二个参数是:',params[1]);
>>> test(1, '小甲鱼',3.14, 5, 6, 7, 8)
Traceback (most recent call last):
  File "<pyshell#73>", line 1, in <module>
    test(1, '小甲鱼',3.14, 5, 6, 7, 8)
TypeError: test() missing 1 required keyword-only argument: 'exp'

>>> def test(*params, exp = 8):
        print('参数的长度是:',len(params), exp);
        print('第二个参数是:',params[1]);
>>> test(1, '小甲鱼',3.14, 5, 6, 7, 8)
参数的长度是: 7 8
第二个参数是: 小甲鱼

评分

参与人数 1鱼币 +3 收起 理由
小甲鱼 + 3

查看全部评分

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-24 14:30

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表