温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

数组在python中能不能作为默认参数使用

发布时间:2020-12-07 14:31:10 来源:亿速云 阅读:166 作者:小新 栏目:编程语言

这篇文章主要介绍数组在python中能不能作为默认参数使用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

还记得之前我们为了使用功能避免进行多次操作,可以选择构建一个框架,框架的功能定义好后就可以直接使用了,同样我们的参数也可以这样定义。在函数调用参数之前,我们就可以给参数赋予值,调用的时候就会自动显示,也省去了我们每次输入的麻烦。

默认参数用于定义函数,为参数提供默认值,调用函数时可传可不传该默认参数的值(注意:所有位置参数必须出现在默认参数前,包括函数定义和调用)

# 正确的默认参数定义方式--> 位置参数在前,默认参数在后
def print_hello(name, sex=1):
    ....
 
# 错误的定义方式
def print_hello(sex=1, name):
    ....
 
# 调用时不传sex的值,则使用默认值1
# print_hello('tanggu')
 
# 调用时传入sex的值,并指定为2
# print_hello('tanggu', 2)

在使用默认参数的时候要特别注意的一点是,默认参数必须要指向不可变对象,比如数组、字典这些都是可变对象,是不能被用作默认参数的,至于为什么,这里不细说了,大家先记住就好,看下面这个例子。

#默认参数,注意不能使用list或dict等作为默认参数
 
def defaultParams(m=1,n=100):
    sum = 0
    for i in range(m,n+1):
        sum += i
    print(sum)
    return sum
 
 
#如果使用list数组来作为默认参数,多次调用函数的返回值会发生变化,在使用过程要特别注意
 
def defaultParamsTemp(list=[]):
    list.append(9)
    print(list)
    return list
 
defaultParams(1,3)
defaultParamsTemp()
defaultParamsTemp()
defaultParamsTemp()
6
[9]
[9, 9]
[9, 9, 9]

以上是“数组在python中能不能作为默认参数使用”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI