2012-08-06 21 views
6

Python'da metin içeren sahte bir dosya nesnesini nasıl oluşturabilirim? Bir dosya nesnesini alan ve metni readlines() aracılığıyla alan bir yöntem için birim sınamaları yazmaya çalışıyorum ve sonra bazı metin manipülasyonları yapıyorum. Lütfen dosya sisteminde gerçek bir dosya oluşturamadığımı unutmayın. Çözüm Python 2.7.3 ile uyumlu olmalıdır.Python'da sahte metin dosyası oluşturma

cevap

25

Tam olarak bu, StringIO/cStringIO (Python 3'teki io.StringIO olarak yeniden adlandırılmıştır) 'dir.

+0

+1 Sadece bunu yayınlayacağım! –

+0

Çözüm Python 2.7.3 – user1454693

+4

@ user1454693 ile uyumlu olmalıdır. StringIO sürümü ... ya da dünyanın geri kalanından farklı bir 2.7.3 kullanıyor musunuz? –

2

Yoksa oldukça kolay tek ihtiyacınız readlines() özellikle beri kendiniz uygulamak olabilir:

def FileSpoof: 
    def __init__(self,my_text): 
     self.my_text = my_text 
    def readlines(self): 
     return self.my_text.splitlines() 

sonra sadece o gibi çağırmak:
somefake = FileSpoof("This is a bunch\nOf Text!") 
print somefake.readlines() 

diğer cevabı muhtemelen daha doğru olduğunu Söylediğin.