Python 0基础学习 数据类型--必须要学的字符串(2)---参数问题解决、位置参数,默认参数,关键字参数介绍以及参数传递(简单版)

错误分析
def是定义函数,下边是最简单函数test(x,y,z).。函数的目的是打印xzy。xyz是参数(实参、形参自己感受)。
参数类型:位置参数,默认参数,关键字参数等

在这里插入图片描述
python positional argument follows keyword argument
位置参数在关键字参数后边:报错

TypeError: test() missing 1 required positional argument: ‘x’
位置参数x缺失

TypeError: test() got multiple values for argument 'x
多个x值

所以正确的做法是
关键字参数z=1等放在位置参数后边(右边), 因为python函数在解析参数时, 是按照顺序来的, 位置参数是必须先满足, 才能考虑其他可变参数.

前边咱们说啦什么是位置参数,什么是关键字参数。
位置参数:调用函数时根据函数定义的参数位置来传递参数。
关键字参数:用于函数调用,通过“键-值”形式加以指定。(键:值。。。这个在字典里会说;你先理解为x=2吧,或者自学去)
有位置参数时,位置参数必须在关键字参数的前面,但关键字参数之间不存在先后顺序的(这就是规则,法则)
默认参数:也是x=2,哈哈还真是的。def里面就是默认参数
#正确的默认参数定义方式–> 位置参数在前,默认参数在后。
在这里插入图片描述
看到没,第一个成功的函数很难理解吧。
咱们说下参数传递
python中一切皆对象,函数中参数传递的是对象的引用。(就像linux系统里一切皆文件,文件有tmd不一样,linux的操作就是捣鼓各种文件)
test(1,2,3)---->y=1,z=2,x=3—>print x,y,z 3,1,2
test(1,3)----->y=1,z=3,x=2(缺省)---->print x,y,z 2,1,3
了然没,没有就自学去吧
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_43570089/article/details/90021054
今日推荐