首先说明一下在编写Python脚本时,如何在里面使用中文
在脚本的开头可以加上如下代码段:
# _*_ coding:utf-8 _*_ 其效果和#coding=utf-8 是一样的
下面总结一下在学习Python定义函数时如何传参的问题:
1、首先是位置传参以及默认值:
定义一个函数func_name,其中形式参数为arg,arg1,arg2,arg3,arg4
在这几个参数中arg3和arg4是有默认值的,如果调用函数时只给了三个值,那后面的arg3和arg4就会使用默认值,当给出的参数是四个或五个时,则一次按位置赋给相应的形参进行调用
下面是执行程序的结果:
PS:位置传参最主要的是参数个数要一致,而且顺序很重要,相应的值赋给相应位置的形参
关键字传参:
在这里也可以使用关键字传参,即在调用函数时指定形参和哪个实参相对应,这时位置就不是那么重要了,但位置传参和关键字传参同时有的话,还是要将位置传参放在前面定义,这在定义函数时就要注意,否则在调用函数时造成不必要的麻烦。
2、收集剩余多余参数和收集多余字典参数
定义一个函数,可以通过正常的只传入值或key-value的方法调用。但是如果第一个时参数传入的是key-value的方法,那么后面的必须都是key-value方法,如果第一个不是,那么后面的可以根据情况再传入值就可以了。
下面是一个具体的实例程序:
在上面的函数func_name中,它所指定的参数是不定的,可能是0个,也可能是n个,所以使用*arg收集剩余所有参数
在调用函数时,如果参数是一个列表,使用*Li其实就是解列表再将列表中的每个元素依次传参,一般使用*arg进行参数收集;如果不使用*Li,直接调用Li,这是将整个列表作为一个整体传入
**arg是用来收集key-value类的参数的,这类参数指定定义在函数参数的最后面,在实际调用函数时,可以使用'key'='value'或{'key1'='value1', 'key2'='value2'}的形式来进行传值调用
函数cat的定义是为了将各种参数都放在一起,让大家能够看到效果,以及在调用cat函数时是怎样传递参数的
下面是函数的输出结果,根据结果对比可以感受一下不同传参调用的区别:
3、从标准输入获取变量,以及在语句中替换变量,以及字典传参在函数体里的应用:
raw_input是用来获取标准输入的值赋给变量,还可以有提示信息
在Python中在语句中加入一个变量使用 % 进行替换进去
在函数定义和调用时,key-value类字典传参时一定要注意都需要前面的两个*号,函数收集后以字典进行保存,传进去以后在调用时就会应道相应的字典方法,这里不再赘述;
下面是程序运行的结果,可以根据结果进行对比,看传参等具体效果如何:
4、函数的返回值
在函数中最重要的就是其返回值,在调用函数时就是要用到其返回值的结果去进行下一步操作处理,下面是一个简单地小例子:
结果如下:
5、用函数实现一个阶乘(递归和自定义)
下面是输出结果,两个函数实现结果一致:
6、下面是一个函数的调用,以及函数名和函数结果赋值有何异同的比较,在一个函数中去调用另一个函数的返回值
下面是输出结果,对比脚本可以看出区别与作用
7、下面是实现了一些内置函数的基本功能,都是一些简单练习,供大家参考学习,请多多提出宝贵意见
结果如下:
上面是本人的一些小结与参考练习,以供大家学习,请多多提出宝贵意见!!!
转载于:https://blog.51cto.com/ptallrights/1788896