鱼C论坛

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

[学习笔记] python复盘:018函数:灵活即强大

[复制链接]
发表于 2020-2-12 11:28:06 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 慕良 于 2020-2-12 11:32 编辑

018函数:灵活即强大

一、形参parameter和实参argument
1、形参:函数定义过程中()里的参数
2、实参:函数调用过程中传递进去的参数
>>> def First(name):
        '函数定义过程中的name是形参'
        #因为他只是一个形式,表示占据一个参数位置
        print ("输入的" + name + '是实参,因为他是具体的参数值。')
>>> First.__doc__
'函数定义过程中的name是形参'
>>> First('xx')
输入的xx是实参,因为他是具体的参数值。

二、函数文档:为方便他人理解
>>> First.__doc__
'函数定义过程中的name是形参'
>>> help(First)
Help on function First in module __main__:

First(name)
    函数定义过程中的name是形参

>>> print.__doc__
"print(value, ..., sep=' ', end='\\n', file=sys.stdout, flush=False)\n\nPrints the values to a stream, or to sys.stdout by default.\nOptional keyword arguments:\nfile:  a file-like object (stream); defaults to the current sys.stdout.\nsep:   string inserted between values, default a space.\nend:   string appended after the last value, default a newline.\nflush: whether to forcibly flush the stream."
>>> help(print)
Help on built-in function print in module builtins:

print(...)
    print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)
    
    Prints the values to a stream, or to sys.stdout by default.
    Optional keyword arguments:
    file:  a file-like object (stream); defaults to the current sys.stdout.
    sep:   string inserted between values, default a space.
    end:   string appended after the last value, default a newline.
    flush: whether to forcibly flush the stream.

三、关键字参数
>>> def say(name,words):
        print(name + '->' + words)

        
>>> say('xx','666')
xx->666
>>> say('666','xx')
666->xx
>>> say(words = '666',name = 'xx')
xx->666

四、默认参数
>>> def say(name = 'xx',words = '888'):
        print(name + '->' + words)

        
>>> say()
xx->888
>>> say('yy')
yy->888
>>> say('yy','555')
yy->555

五、收集参数(可变参数)
>>> def test(*params):
        print('参数的长度是:',len(params));
        print('第二个参数是:',params[1]);
>>> test(4,'xx',3.14,8,6,10)
参数的长度是: 6
第二个参数是: xx
>>> def test(*params,exp):
        print('参数的长度是:',len(params),exp);
        print('第二个参数是:',params[1]);
>>> test(4,'xx',3.14,8,6,exp=10)
参数的长度是: 5 10
第二个参数是: xx
>>> def test(*params,exp=10):
        print('参数的长度是:',len(params),exp);
        print('第二个参数是:',params[1]);
>>> test(4,'xx',3.14,8,6,10)
参数的长度是: 6 10
第二个参数是: xx
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-23 05:30

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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