鱼C论坛

 找回密码
 立即注册
查看: 3282|回复: 3

[技术交流] python函数中的参数类型

[复制链接]
发表于 2016-7-19 16:01:22 | 显示全部楼层 |阅读模式

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

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

x
        Python的函数定义非常简单,除了正常定义的必选参数外,还有默认参数、可变参数、关键字参数等。
       
        一 位置参数(必选参数)
               
                例如:def power(x):
                                 print (x*x)
                x即位置参数,是必不可少的,在调用函数时需要传递一个参数给power()函数,在调用过程中传递的参数为实参;在定义函数过程中,使用x占    据一个参数位置,叫做形参

        二 默认参数:在定义函数时,为形参指定一个默认的实参,函数在调用时,可不用传入默认参数,直接使用函数提供的,也可传入参数,这是使用调用者传入的参数
               
                例如: def  power(x,n=2):
                                s = 1
                                while n > 0:
                                        n = n -1
                                        s = s
                                return s
                调用函数:
                                >>>power(3)
                                9
                                >>>power(3,2)
                                9
       
        三 可变参数:传入的参数的个数是可变的,可以是任意个,如1个、2个或者0个。当调用者传入参数时,函数将传入的参数变成一个tuple

                例如:
                                >>>def calc(*numbers):
                                                sum = 0
                                                for i in numbers:
                                                        sum = sum + n
                                                return sum
                                >>>calc(1,2)
                                3
                                >>>calc(1,2,3,4)
                                10

                如果事先定义好list或tuple,可以用如下方法传入参数:
                                >>>list1=[1,2,3,4]
                                >>>calc(*list1)


        四 关键字参数:可以传入0个或任意个带参数名的参数,这些参数在函数内部自动组成一个dict
                               
                        例如:
                                >>>def  person(name,age,**kw):
                                                print('name: ',name)
                                                print('age: ',age)
                                                print('other: ',kw)

                                >>>person('Tom',26)
                                name:Tom
                                age:26
                                other:{}

                                >>>person('Bob',30,city='Beijing')
                                name: Bob
                                age: 30
                                other: {'city': 'Beijing'}
                               
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-11-26 22:56:21 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-11-29 11:26:55 | 显示全部楼层

总结的不错,谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-12 14:07:20 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-24 19:28

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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