gpt4 book ai didi

python - 如何检测代码是否兼容 python 3

转载 作者:太空狗 更新时间:2023-10-29 17:03:09 25 4
gpt4 key购买 nike

我正在使用 openstack/bandit 进行静态代码分析。确实有很多存储库,其中一些在 python 2 中,其他在 python 3 中。如何在不运行代码的情况下检测代码是否在语法上与 python 3 兼容。

最佳答案

基本验证是 2to3 工具是否打印任何差异(s. https://docs.python.org/3/library/2to3.html 用于基本用法)

在像 a.py 这样的简单文件上:

import urllib2

print "printing something"

你会得到:

> 2to3 a.py

RefactoringTool: Skipping optional fixer: buffer
RefactoringTool: Skipping optional fixer: idioms
RefactoringTool: Skipping optional fixer: set_literal
RefactoringTool: Skipping optional fixer: ws_comma
RefactoringTool: Refactored a.py
--- a.py (original)
+++ a.py (refactored)
@@ -1,4 +1,4 @@
-import urllib2
+import urllib.request, urllib.error, urllib.parse

-print "printing something"
+print("printing something")

RefactoringTool: Files that need to be modified:
RefactoringTool: a.py

关于python - 如何检测代码是否兼容 python 3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40886456/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com