“pyoverload”通过简单地使用typehints和添加装饰符“@overloadload”来重载函数。

pyoverload的Python项目详细描述


PY过载

pyoverload是项目^{}的附属包。它是一个强大的重载工具,可以为python v3.6+提供简单的重载。pyoverload提供多种用法。然而,最简单的方法可以很容易地实现如下。在

>>>frompyoverloadimportoverload>>>@overload...deffunc(x:int):...print("func1",x)...>>>@overload...deffunc(x:str):...print("func2",x)...>>>func(1)func11>>>func("1")func21

pyoverload具有以下所有吸引人的功能:

  1. 关键字装饰器@overload支持Jedi自动完成。这意味着所有主流pythonide都可以提示您定义的重载函数。在
  2. 多种用法对所有类型的用户都是友好的,包括C/Java语言系统用户和习惯于基于{}的重载的用户。此外,还提供了普通python函数的简单收集器。在
  3. 支持各种函数,包括函数、方法、类方法和静态方法。一个简单的实现。在
  4. ^支持{str 1}$String类型。这意味着可以使用"numpy.ndarray"来标记numpy数组,而无需导入整个包。在
  5. 提供了足够的内建类型以便于表示,例如List[Int]Dict@{str: int}或{}。在
  6. Available usage list当没有重载函数与输入参数匹配时。在
  7. Type约束,用于使用@params修饰符的普通函数。在

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

推荐PyPI第三方库


热门话题
java JNI和取消异步任务   java整数n作为List<String>的第二个参数传递。子列表(fromIndex,toIndex),但是stacktrace说toIndex在Kotlin中是n+2   如何在Java中正确嵌套多个ArrayList/Maps?   在嵌套条件语句中比较数组中的值时,java List没有打印正确的值   从CRON作业运行java代码   JRE使用jvisualvm检测到java致命错误   java将字符添加到BufferedReader中   带有枚举的java单例与带有双重检查锁定的单例   Java中的编译器构造基类的更改会影响子类的字节码吗?   Java作为Windows服务用户数据路径   java clone():ArrayList。克隆人()我认为它是一个肤浅的复制品   在jfilechooser多文件选择器启用中打开对话框后,java文件将显示所选文件   java在常用的操作方法中使用反射可以吗?   java ReloadableResourceBundleMessageSource。getMessage()不使用我给它的参数