使用cmd在Python中调用2to3

使用cmd在Python中调用2to3,python,cmd,python-2to3,Python,Cmd,Python 2to3,我有一个用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\De

我有一个用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*

这是最后一行我似乎没有弄清楚,所以我想我的问题是,如何在每次迭代files变量时调用python中的2to3函数?

您可以直接从命令行执行

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

对于所示集合中的每个文件,执行转换,并传递
For
可替换参数(本示例中为
%a
),该参数保存对正在迭代的文件的引用。

您可以直接从命令行执行转换

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

对于所示集合中的每个文件,执行转换,并传递
For
可替换参数(
%a
,在本示例中),该参数保存对正在迭代的文件的引用。

如果省略显式脚本进行转换,则类似于2to3支持递归文件夹检查

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

发件人:


如果省略了要转换的显式脚本,看起来2to3支持递归文件夹检查

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

发件人:


谢谢你的回答。另一个很好用,所以我没有试过,但我感谢你的回答。Ezsrac谢谢你的回答。另一个很好用,所以我没有试过,但我感谢你的回应。