如何规避python参数的初始化次数?

如何规避python参数的初始化次数?,第1张

如何规避python参数初始化次数?

我们在内存不足的时候,除了增加内存的可用度,可以进行一个清理内存的初始化 *** 作,当然这种是最后迫不得已的选择。我们在python中也有需要用到初始化的地方,鉴于参数和函数的关系密不可分,本篇我们会简单的说一下参数的概念让小伙伴们了解一下,然后结合函数一起探讨参数的初始化次数问题。

在 python 中,类型属于对象,变量是没有类型的。

参数可以看作钥匙,函数是门,多个参数就是多把钥匙,开门需要钥匙。

除了空参数和正常定义的必选参数外,还可以使用默认参数、可变参数和关键字参数。以下是调用函数时可使用的正式参数类型:

  • 空参数

  • 必需参数

  • 默认参数

  • 不定长参数

 

默认参数只初始化一次

函数的默认值只会创建一次,之后不会再变了,使用对象(列表、字典、实例)作为默认值,会导致函数混乱,如下面的函数在后续调用中积累传递给它的参数

def f(a, L=[]):
    L.append(a)
    return L
 
print f(1)
print f(2)
print f(3)

 输出为

[1]
[1, 2]
[1, 2, 3]

可以使用下面的办法进行规避:

def f(a, t=None):
    t = t or []
    t.append(a)
return t

通过本篇的学习我们可以看出,虽然我们常说默认参数的初始化次数是固定的,但依然可以通过一些特殊的方法来规避。当然我们作为初学者,大部分时候还是尽量不要尝试特殊方法避免出错。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/3013927.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-09-28
下一篇 2022-09-28

发表评论

登录后才能评论

评论列表(0条)

保存