当前位置: 代码迷 >> python >> 使用cmd在Python中调用2to3
  详细解决方案

使用cmd在Python中调用2to3

热度:58   发布时间:2023-06-16 14:11:25.0

我有一个用Python 2.7编写的.py文件文件夹,我想使用2to3工具将其转换为Python 3。 在cmd提示符下使用Windows 10,我可以使用以下命令转换单个文件:

C:\Users\t\Desktop\search>python.exe 2to3.py -w graphicsDisplay.py

但是,此行在python shell中语法上不正确,理想情况下,我希望能够使用cmd中的以下python代码遍历整个文件夹并使用来更新所有.py文件:

C:\Users\t\Desktop\search>python
>>> import os
>>> for files in os.listdir('*filepath*'):
>>>        if '.py' == str(files[-3:]):
>>>            *...some line of code here to perform 2to3*

它的最后一行似乎无法正确显示,所以我想我的问题是,如何在文件变量的每次迭代中在python中调用2to3函数?

您可以直接从命令行进行操作

for %a in (*.py) do python.exe 2to3.py -w "%a"

对于指定集中的每个文件,执行转换,传递for可替换参数(此示例中for %a ,该参数包含对要迭代的文件的引用。

如果您没有显式脚本进行转换,则看起来2to3支持递归文件夹检查。

将所有脚本放在一个文件夹中并针对该文件夹执行会更容易吗?

来自: :

2to3 --output-dir=python3-version/mycode -W -n python2-version/mycode