Zope的2to3修复器
项目描述
简介
为Zope组件架构及其构建的框架提供的修复器。
目前,只有一个修复器,即fix_implements。此修复器将类体中所有对implements(IFoo)的使用更改为类装饰器@implementer(IFoo),这是zope.interfaces中使用implements语句最可能的Python 3语法。
用法
通常,您将zope.fixers与Distribute的2to3支持一起使用。这是通过在setup()中添加zope.fixers到某些参数来完成的
>>> setup( ... install_requires = ['zope.fixers'], ... use_2to3 = True, ... use_2to3_fixers = ['zope.fixers'], ... )
有关复杂用例的示例,请参阅
http://svn.zope.org/zope.interface/branches/regebro-python3/setup.py?rev=106216&view=markup
setup.py支持distutils、setuptools和distribute,兼容从Python 2.4到3.1的所有版本,并有一个可选的C扩展,所以不必担心它过于复杂。对于简单的项目,您只需要使用Distribute并在setup.py中添加上述三条命令。Distribute提供了更多关于如何使用它来支持Python 3迁移的文档。
如果您不想使用Distribute,事情会变得稍微复杂一些,因为您需要自己制作修复器的列表,并使用它调用lib2to3。
>>> from lib2to3.refactor import RefactoringTool, get_fixers_from_package >>> fixers = get_fixers_from_package('lib2to3.fixes') + \ ... get_fixers_from_package('zope.fixers')
然后运行修复器进行修复
>>> tool = RefactoringTool(fixers) >>> tool.refactor(files, write=True)
修复脚本
该软件包还提供了一个名为zope-2to3的控制台脚本,它具有与2to3相同的参数,但应用此软件包中定义的修复器。
变更记录
1.1.2 (2013-02-23)
删除了setup.cfg并确保我们指向实际的变更日志。
1.1.1 (2013-02-23)
再次移除了对Python 2.7的支持。它不起作用。
1.1.0 (2013-02-22)
添加了控制台脚本zope-2to3。
1.0.0 (2009-09-12)
初始发布。包括实现修复,将实现(IFoo)类体调用更改为@implementer(IFoo)类装饰器。
项目详情
zope.fixers-1.1.2.zip的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 83300f0911ae3b6dff55f9d953d64de0b685cd1dd495cfb410d10fa861646005 |
|
MD5 | 4bcdc78798c772e6d1dd03ff3870d4a9 |
|
BLAKE2b-256 | a5a81f660c8ed6a0a78618bedba862b04859227015e696fd187839c2d2e7f692 |