1

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 では十分ではありません)。

助言がありますか?

4

1 に答える 1

1

いいえ、使用しないでくださいsed。必要なのは、リファクタリングまたはマクロを理解する IDE です。たとえば、次のようにしますvim

  • with A as a, with B as B:パターンを探す

  • マクロの記録を開始するqa

  • コンマを見つけるf,

  • コロンに置き換えますr:

  • スペースを削除してから改行を入力しますlx<enter>

  • タブまたはスペースを使用してインデントする

  • を押しqて録音を停止します

次に、検索を繰り返し、 を押し@aてマクロを再生します。

于 2016-05-11T16:39:09.640 に答える