如何从旧的Python版本中隐藏不兼容的代码?

如何从旧的Python版本中隐藏不兼容的代码?,第1张

概述我正在为一个带有* args和** kwargs参数的函数编写单元测试.此函数的合理用例是在* args段之后使用关键字参数,即表单 def f(a, *b, **c): print a, b, cf(1, *(2, 3, 4), keyword=13) 现在这只有became legal in Python 2.6;在早期版本中,上面的行是语法错误,因此甚至不会编译为字节码. 我的问 我正在为一个带有* args和** kwargs参数的函数编写单元测试.此函数的合理用例是在* args段之后使用关键字参数,即表单

def f(a,*b,**c):    print a,b,cf(1,*(2,3,4),keyword=13)

现在这只有became legal in Python 2.6;在早期版本中,上面的行是语法错误,因此甚至不会编译为字节码.

我的问题是:我如何测试较新的Python版本中提供的功能,并且仍然可以为较旧的Python版本运行测试?

我应该指出,函数本身适用于早期的Python版本,只有一些调用是Python 2.6之前的语法错误.我看过检查Python版本的各种方法不适用于此,因为它没有超过编译阶段.

如果可能的话,我宁愿不必将测试分成多个文件.

解决方法 我认为你不应该测试Python是否正常工作;相反,专注于测试自己的代码.在这样做时,完全可以以适用于所有Python版本的方式编写特定的调用,即:

f(1,**{'keyword':13})
总结

以上是内存溢出为你收集整理的如何从旧的Python版本中隐藏不兼容的代码?全部内容,希望文章能够帮你解决如何从旧的Python版本中隐藏不兼容的代码?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

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

原文地址: https://outofmemory.cn/langs/1195082.html

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

发表评论

登录后才能评论

评论列表(0条)

保存