自动向后移植 python 2.7 到 2.6
Automatically backport python 2.7 to 2.6
我需要 运行 Python 2.6 下的一些 Python 2.7 代码,我想知道如何实现自动化。
一些具体的简单更改是
sed -i -e 's/:,d/:d/g' -e 's/{0}/set([0])/g' foo.py
不过,我还需要更换
with open(foo) as f, open(bar) as b:
...
与
with open(foo) as f:
with open(bar) as b:
...
这对我来说不太明显(我需要正确缩进,而我的 sed
-foo 在这里还不够)。
有什么建议吗?
不,不要使用 sed
。您需要的是理解重构或宏的 IDE。例如,这是我在 vim
:
中会做的
搜索 with A as a, with B as B:
模式
开始录制宏qa
找到逗号f,
换成冒号r:
删除space然后输入换行符lx<enter>
Tab 或使用 spaces 缩进
按q
停止录音
然后您循环搜索并按 @a
重播宏。
我需要 运行 Python 2.6 下的一些 Python 2.7 代码,我想知道如何实现自动化。
一些具体的简单更改是
sed -i -e 's/:,d/:d/g' -e 's/{0}/set([0])/g' foo.py
不过,我还需要更换
with open(foo) as f, open(bar) as b:
...
与
with open(foo) as f:
with open(bar) as b:
...
这对我来说不太明显(我需要正确缩进,而我的 sed
-foo 在这里还不够)。
有什么建议吗?
不,不要使用 sed
。您需要的是理解重构或宏的 IDE。例如,这是我在 vim
:
搜索
with A as a, with B as B:
模式开始录制宏
qa
找到逗号
f,
换成冒号
r:
删除space然后输入换行符
lx<enter>
Tab 或使用 spaces 缩进
按
q
停止录音
然后您循环搜索并按 @a
重播宏。