鱼C论坛

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

[技术交流] python学习之第18讲笔记

[复制链接]
发表于 2017-6-18 10:19:51 | 显示全部楼层 |阅读模式

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

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

x
1、形参(parameter)和实参(argument)
形参是在函数定义时设置的参数,实参是在函数调用时输入的参数,一般是一个确定的值,用来传递给形参。

2、函数文档概念
在Python中将函数体内首行字符串作为函数文档,文档字符串中对函数的功能和参数的含义进行说明。
a、可以通过特殊属性__doc__获取返回这个字符串以备使用者查看(注意__doc__是两个下划线)
>>> def myfunction():
        '123456'
>>> print(myfunction.__doc__)
123456
b、也可以通过help(函数名)形式直接打印出这个字符串:
>>> help(myfunction)
Help on function myfunction in module __main__:

myfunction()
    123456

3、(练习)请问这个函数有多少个参数??
def MyFun((x, y), (a, b)):
    return x * y - a * b
注意点:不是2个,更不是4个。这个写法是错误的,因为函数的参数是变量,试图用元组的方式来传递是不对额

学习下面的方式实现上面的问题
>>> def MyFun(x, y):
        return x[0] * x[1] - y[0] * y[1]

>>> MyFun((3, 4), (1, 2))
10

4、关键字参数
当函数定义形参比较多时,在函数调用时直接将参数值赋给对应的形参变量而不必顺序一一对应
>>> def function3(name,action):
        print('%s——>%s' %(name,action))
function3(action='让编程改变世界!',name='学习')
学习——>让编程改变世界!

5、默认参数
是函数定义时可以直接给形参变量赋初值,这样函数调用过程中即使没传入相应实参也能正常执行,举例说明:
>>> def function3(name = '学习',action = '让编程改变世界!'):
        print('{0}——>{1}'.format(name,action))        
>>> function3()
学习——>让编程改变世界!
>>> function3('读书')
读书——>让编程改变世界!

6、收集参数
当函数参数数量不一定时,在函数定义时可以使用收集参数,即在形参变量名前加一个'*',其实表示该参数变量是一个元组类型,传入的实参会以元组形式赋值给形参变量
>>> def func4(*para):
                print('para的数据类型是%s' %type(para))
                print('para的长度是%d' %len(para))
>>> func4('小甲鱼')
para的数据类型是<class 'tuple'>
para的长度是1

另外,函数定义时如果有收集参数和其他的参数时,在函数调用过程中必须使用关键字参数才能将实参值传递给对应的一般形参,而且最好的形式是一般形参有默认参数,举例说明:
>>> def func5(*parameters,num=3):
        print(len(parameters))
        print(num)        
>>> func5(12,14,'小甲鱼',num = 5)
3
5

评分

参与人数 2鱼币 +6 收起 理由
康小泡 + 2
小甲鱼 + 4 支持楼主!

查看全部评分

本帖被以下淘专辑推荐:

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-20 18:33

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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