Python 2.6でいくつかのPython 2.7コードを実行する必要があり、どのように自動化できるのか不思議でした。Python 2.7から2.6へのバックポートを自動的に
いくつかの特定の単純な変更は、しかし、私はまた
with open(foo) as f:
with open(bar) as b:
...
で
with open(foo) as f, open(bar) as b:
...
を交換する
sed -i -e 's/:,d/:d/g' -e 's/{0}/set([0])/g' foo.py
必要があると私はする必要があります(それは私のためにはるかに少ない明らかですインデントを正しく取得してください。ここではsed
-fooで十分ではありません)。
提案がありますか?
あなたのコードベースには本当に多くの 'x、y'ステートメントがありますか?発見を自動化するのではなく、置換を自動化する価値がありますか?私は 'sed'が一般的なケースでこの仕事に就いているとは思っていません - Python独自の' AST'モジュールなどを使用したいと思うでしょう - 実際のPythonインデントを理解するもの。 –
@JohnZwinck:私は誰かがすでにこのために何かを持っていることを望みました。私たちはそれを手動で行うこともできますが、自動化はより信頼性が高いと思います。 – sds