首页
学习
活动
专区
工具
TVP
发布
您找到你想要的搜索结果了吗?
是的
没有找到

为什么 Python 不支持函数重载?

知乎问题:为什么 Python 不支持函数重载? 函数重载主要是为了解决两个问题。 -可变参数类型。 -可变参数个数。...另外,一个基本的设计原则是,仅仅当两个函数除了参数类型和参数个数不同以外,其功能是完全相同的,此时才使用函数重载,如果两个函数的功能其实不同,那么不应当使用重载,而应当使用一个名字不同的函数。...好吧,那么对于情况 1 ,函数功能相同,但是参数类型不同,python 如何处理?...答案是根本不需要处理,因为 python 可以接受任何类型的参数,如果函数的功能相同,那么不同的参数类型在 python 很可能是相同的代码,没有必要做成两个不同函数。...因为你假设函数功能相同,那么那些缺少的参数终归是需要用的。 好了,鉴于情况 1 跟 情况 2 都有了解决方案,python 自然就不需要函数重载了。

52731

有人说 Python 不支持函数重载?

Python 的变量没有类型,因此 Python 语法本身不支持函数重载,因此有人说 Python 不支持函数重载这话本身是正确的,不过本文想说的是,Python 动态语言的灵活性根本不需要通过函数重载就可以实现一个函数多个功能...namespace,它是一个字典,存储了类的成员变量和成员函数,当我们在一个类定义多个同名函数时,最后一个会把前面的全部覆盖掉,这是字典的特性,同一个键多次赋值,只会保留最后一个,因此 Python...类不支持函数重载。...现在我们需要保留多个同名函数,那就要改写这个字典,当出现同一个键多次赋值时,将这些值(函数)保留在一个列表,具体方法编写一个类,继承 dict,然后编写代码如下: class OverloadDict....f at 0x7fdec70090d0>]} OverloadDict 解决了重名函数的如何保存问题,就是把它们放在一个列表,还有一个问题没有解决,那就是调用的时候如何从列表取出正确的那个函数来执行

60940

css3函数,你曾用几个?

css3在切图中占有半壁江山的位置,所谓人靠衣装,马靠鞍,一个网站好不好看除了设计本身,合理的布局以及完美css布局会让视觉更上一层楼 今天主要分享几个在css3常用的函数,希望看完在项目中有所思考和帮助...attr calc很强大,但今天有一个css3技能必须让你感受她的强大,那就是传说中的attr attr这个函数是一个非常有名的函数,那么她可以做什么呢?...非常有用的一个函数,通常来讲你想加载css3的变量就必须使用var,比如说 Web技术学苑 对应的...,通常在我们业务可能会很少遇到,但是在实现一个复杂的结构时,我们除了用图片替换,可能css也是可以绘制的,比如我们用css绘制一个平行四边形 <div...常用的高频函数,比如calc,var,attr,repeat,url等,通常来讲有些函数可能用的并不是会那么多,比如counter、tan、sin函数等 另外还有不少不太常用的css3函数,具体可参考Function

14920
领券