python中不需要函数重载的原因
函数重载主要是为了解决两个问题:
1.可变参数类型
2.可变参数个数
并且函数重载一个基本的设计原则是,仅仅当两个函数除了参数类型和参数个数不同以外,其功能是完全相同的,此时才使用函数重载,如果两个函数的功能其实不同,那么不应当使用重载,而应当使用一个名字不同的函数。那么对于情况1,函数功能相同,但是参数类型不同,对于这种情况python根本不需要进行处理,因为Python可以函数可以接受任意类型的参数,所以如果函数功能相同,只是不同的参数类型在python中没有什么不同,所以没有必要做成两个函数就没有必要使用函数的重载。
对于情况2,如果是函数拥有同样的功能只是参数个数不同,这种情况对于Python同样不需要函数的重载,因为Python中存在缺省参数,对于个数不确定的函数采用缺省参数的方法就能完成所有的工作。
函数重载为了解决的两个问题在Python中都不是问题因此Python就没有再进行函数重载的必要了,所以Python中不存在函数的重载。
转载于:https://www.cnblogs.com/s-1314-521/p/9762437.html
python中不需要函数重载的原因相关推荐
- 17.Python中的魔法函数
<Python编程的术与道:Python语言进阶>视频课程 <Python编程的术与道:Python语言进阶>视频课程链接:https://edu.csdn.net/cours ...
- python中list作为函数参数_在python中list作函数形参,防止被实参修改的实现方法
0.摘要 我们将一个list传入函数后,函数内部对实参修改后,形参也会随之改变.本文将主要介绍这种错误的现象.原因和解决方法. 1.代码示例 def fun(inner_lst): inner_lst ...
- [小笔记]TypeScript/JavaScript模拟Python中的Range函数
[小笔记]TypeScript/JavaScript 模拟Python中的Range函数 李俊才/CSDN博客 CSDN用户名:jcLee95 邮箱:291148484@163.com 原创不易,感谢 ...
- Python中的str()函数和repr()函数
在 Python 中要将某一类型的变量或者常量转换为字符串对象通常有两种方法,即str() 或者 repr() . >>> a = 10 >>> type(str( ...
- 如何实现python中的strcmp函数
def strcmp(str1,str2):if str1[:len(str2)] == str2:return 1elif str2[:len(str1)] == str1:return 1retu ...
- Python中的常用函数
1.range()是一个函数 for i in range () 就是给i赋值: 比如 for i in range (1,3): 就是把1,2依次赋值给i range () 函数的使用是这样的: r ...
- python中的pop()函数和popleft()函数
python中的pop()函数和popleft()函数 首先对于pop而言,它是用于stack中的: stack = [1, 2, 3, 4] print(stack) stack.append(6) ...
- python中使用zip函数基于两个列表数据list创建字典dict数据(Create a dictionary by passing the output of zip to dict)
python中使用zip函数基于两个列表数据list创建字典dict数据(Create a dictionary by passing the output of zip to dict) 目录
- python中add函数_如何使用python中的add函数?
之前向大家介绍过python中的求和函数sum函数,numpy中的sum函数,对于数组可以指定维度进行相加.numpy中还有另一种求和运算方法,即add函数.add函数不仅作用于numpy中加法运算, ...
最新文章
- bootstrap 图片预览_教你简单用Photoshop制作GIF图片
- cocos2d-x初探学习笔记(5)--动作管理
- 32位linux 内存占用,LINUX内存高,触发OOM-KILLER问题解决
- java alarm api_JAVA抽象类及接口使用方法解析
- AndroidStudio安卓原生开发_Intent传过来的值会自动变化_太奇怪了_你碰见过嘛_Http并发引起的问题?_可通过静态变量传值的方式解决---Android原生开发工作笔记130
- 贝叶斯算法伪代码_字节跳动算法面经
- 阿里百川码力APP监控 来了!
- scanf()正则表达式的使用
- 谭浩强c语言第五版 第二章习题解答
- YUI3学习(二)--YUI Global Object
- hustoj 服务器配置
- Excel 取消分页符
- 生成二维码如何制作二维码
- AI项目环境搭建go+supervisor+openresty
- EF Core 批量写入数据使用整理_EF Core批量插入数据(一)
- 画图取色小工具markman
- Excel如何快速统计指定填充颜色的数据个数
- Android 8内测版本,安卓qq v8.0.8内测版
- 【程序人生】1024 程序员节——闲言鹤语
- android7 boot root,一加7T/7TPro Root不求人,自己提取boot.img打补丁