SORU
20 NİSAN 2009, PAZARTESİ


Bir ayrıştırma .py, AST dosya okumak, değiştirmek, değiştirilmiş kaynak kodu yazmak o zamanlar

Program aracılığıyla python kaynak kodu düzenlemek istiyorum. Temelde .py Dosya okuma, AST oluşturmak ve modifiye python kaynak kodu (.py başka bir dosya yani) geri yazmak istiyorum.

/Python kaynak kodu standart python modülü kullanılarak, ast compiler gibi ayrıştırma derlemek için yolu vardır. Ancak, herhangi bir kaynak kodu (bu işlev bildirimi örneğin silme) değiştir ve değiştirme python kaynak kodu yazmak o zamanlar için yollar desteği sanmıyorum.

GÜNCELLEME: ben bunu yapmak istiyorum nedeni python için Mutation testing library bir çoğunlukla ifadeler / silme ifadeleri tarafından yazmak istiyorum, testleri tekrarlıyorlar ve ne sonları görüşüyor.

CEVAP
20 NİSAN 2009, PAZARTESİ


Pythoscope python 2.6 (python dönüştürür 2. 2to3 aracı otomatik olarak oluşturur sınama durumlarda bu mu x python 3 Kaynak.x kaynak).

Hem bu araçlar yuvarlak kaynak - ^ dan takıldı olduğunda kaynak yorum koruyacak/derleyici makine python ayrıştırıcı bir uygulama olan lib2to3 kitaplığını kullanır . AST ->kaynak.

rope project eğer dönüşümleri gibi yeniden düzenleme yapmak istiyorsanız, ihtiyaçlarınızı karşılamak olabilir.

ast modülü diğer seçenek, ve there's an older example of how to "unparse" syntax trees back into code (çözümleyici modülü kullanarak). Ama ast modül daha sonra kod bir nesne haline dönüştürülmüştür kodu ile ilgili bir AST dönüşümü yaparken daha kullanışlıdır.

redbaron proje, aynı zamanda iyi bir uyum (ht Xavier Combelle) olabilir

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Blunty

    Blunty

    13 Mart 2006
  • Alexey - servant of Christ

    Alexey - ser

    15 EYLÜL 2007
  • Techmoan

    Techmoan

    31 Mayıs 2009