python 3的函数重载

overloading的Python项目详细描述


overloading是一个提供函数和方法分派的模块 基于运行时参数的类型和数量。

调用重载函数时,调度程序将比较 可用签名的参数,并调用提供 最精确的匹配:

@overloaddefbiggest(items:Iterable[int]):returnmax(items)@overloaddefbiggest(items:Iterable[str]):returnmax(items,key=len)
>>>biggest([2,0,15,8,7])15>>>biggest(['a','abc','bc'])'abc'

功能

  • 注册期间的功能验证和综合解决规则 保证在调用时有一个定义良好的结果。
  • 支持python 3.5中引入的typing模块。
  • 支持可选参数。
  • 支持可变签名(*args**kwargs)。
  • 支持类/静态方法。
  • 计算位置参数和关键字参数。
  • 没有超出标准库的依赖项

文档

完整的文档可在https://overloading.readthedocs.org/找到。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
并行处理java。util。同时发生的叉子在游泳池里。常见的并行性准则,用于选择正确的并行度大小   java如何将空白字符追加到指定长度?   安卓应用程序中出现错误,SSLHandshakeException,找不到证书路径的信任锚点   java如何使用JUnit Mockito验证检查方法是否未被调用   java如何使用不同的@RequestMapping解析多个控制器中的静态页面   Selenium中的javascript需要验证搜索结果   访问数据库SQLiteopenHelper方法时java应用程序崩溃(nullpointerexception)   在二叉树中验证最小堆时出现java空指针异常   Java 7的SSL连接失败   java用RestEasyWebTarget替换ProxyFactory不起作用   在Java应用程序中单击“否”按钮后,数组程序冻结(无响应)   数组中的前缀Java初学者前进和   Java HTML解析器,包括脚本标记和LineNumberReader   在java中为长类型数字加前导零   正则表达式无法映射正则表达式java。lang.IllegalArgumentException:模式段中捕获组的数量