2024-10-06 12:09:32 发布
网友
2020年使Python 3兼容的最佳实践是什么
例如,运行old SConstruct会产生如下错误
SConstruct
✗ python ~/scons/scripts/scons.py scons: Reading SConscript files ... File "/home/techtonik/Folding@home/fah-control/SConstruct", line 17 except Exception, e: ^ SyntaxError: invalid syntax
2to3或^{}应该有帮助。这只是Python语法的问题
2to3
2to3随Python一起提供,也可以作为Python模块执行:
python -m lib2to3 -w SConstruct
下面是建议的补丁2to3,看起来很小:
RefactoringTool: Refactored SConstruct - SConstruct (original) +++ SConstruct (refactored) @@ -3,8 +3,8 @@ env = Environment(ENV = os.environ) try: env.Tool('config', toolpath = [os.environ.get('CBANG_HOME')]) -except Exception, e: - raise Exception, 'CBANG_HOME not set?\n' + str(e) +except Exception as e: + raise Exception('CBANG_HOME not set?\n' + str(e)) env.CBLoadTools('packager run_distutils osx fah-client-version') env.CBAddVariables( @@ -14,7 +14,7 @@ # Version try: version = env.FAHClientVersion() -except Exception, e: +except Exception as e: print(e) version = '0.0.0' env.Replace(PACKAGE_VERSION = version) RefactoringTool: Files that need to be modified: RefactoringTool: SConstruct
2to3
或^{2to3
随Python一起提供,也可以作为Python模块执行:下面是建议的补丁
2to3
,看起来很小:相关问题 更多 >
编程相关推荐