开发者社区> 问答> 正文

python如何定义接受参数的函数

python如何定义接受参数的函数

问题来源于python学习网

展开
收起
游客ejnn55cgkof5g 2019-12-11 17:47:23 531 0
1 条回答
写回答
取消 提交回答
  • Python中的函数可以有参数,也可以无参数,参数可以分为默认参数,位置参数,关键字参数和可变参数。

    对于函数:

    def fun(arg):

    print(arg) def main():

    fun('hello,Hongten') if name== 'main':

    main() 当我们传递一个参数给fun()函数,即可打印出传递的参数值信息。(更多学习内容,请点击Python学习网)

    这里打印的信息为:

    hello,Hongten

    python学习网,大量的免费python学习视频,欢迎在线学习!

    对于下面的用例:

    def fun(a=1, b=None, c=None,*args):

    print('{0},{1},{2},{3}'.format(a, b, c, args)) def main():

    fun(a='one')

    fun('one') if name== 'main':

    main() 当传递的参数为:fun(a='one')和fun('one')这样的传参都是把值复制给参数a,所有两种传参的效果是一样的:

    one,None,None,()

    one,None,None,()

    当然我们也可以给参数:b,c,*args赋值

    如:

    def fun(a=1, b=None, c=None,*args):

    print('{0},{1},{2},{3}'.format(a, b, c, args)) def main():

    fun('one',1,2,('hongten')) if name== 'main':

    main() 这样我们就给参数:b,c,args赋上了值

    运行效果:

    one,1,2,('hongten',)

    在上面的列子中,我们不能绕开参数args前面的参数a,b,c给args复制:

    如:

    def fun(a=1, b=None, c=None,*args):

    print('{0},{1},{2},{3}'.format(a, b, c, args)) def main():

    fun(args=('hongten')) if name== 'main':

    main() 运行效果:

    Traceback (most recent call last):

    File "E:/Python33/python_workspace/test_fun.py", line 21, in

    main()

    File "E:/Python33/python_workspace/test_fun.py", line 18, in main

    fun(args=('hongten'))

    TypeError: fun() got an unexpected keyword argument 'args'

    专题推荐:函数参数 问题来源于python学习网

    2019-12-14 09:34:03
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
From Python Scikit-Learn to Sc 立即下载
Data Pre-Processing in Python: 立即下载
双剑合璧-Python和大数据计算平台的结合 立即下载

相关实验场景

更多