Diyelim ki StreamIO gibi dosya benzeri bir nesneyim var ve python uyarı modülünün tüm uyarı mesajlarını yazmasını istiyorum. Bunu nasıl yaparım?Python uyarıları özel bir akışa nasıl yönlendirilir?
6
A
cevap
11
deneyin warnings.showwarning yani
#!/sw/bin/python2.5
import warnings, sys
def customwarn(message, category, filename, lineno, file=None, line=None):
sys.stdout.write(warnings.formatwarning(message, category, filename, lineno))
warnings.showwarning = customwarn
warnings.warn("test warning")
Stdout'a tüm uyarıları yönlendirir yeniden atama. o denenmemiş kod ve şu anda bana eludes daha temiz bir yol var gibi arayüzü görünüyor olsa
0
Ben böyle bir şey işe yarar mı:
import warnings
# defaults to the 'myStringIO' file
def my_warning_wrapper(message, category, filename, lineno, file=myStringIO, line=None):
warnings.show_warning(message, category, filename, lineno, file, line)
warnings._show_warning = my_warning_wrapper
Lib \ warnings.py içindeki bir bakış koymak yardımcı olmalıdır Eğer bu yeterli değilse doğru yoldasınız.
0
import sys
import StringIO
sys.stdout = StringIO.StringIO()
İlgili konular
- 1. Bir IntPtr'ı Akışa nasıl dönüştürebilirim?
- 2. Kısa URL sistemi: Özel URL'leri nasıl yönlendirilir?
- 3. Python kaydediciyi Tkinker'ın Liste Kutusuna nasıl yönlendirilir?
- 4. Python 2.4'de uyarıları sayma
- 5. Node.js - Akışa nasıl bağlanır
- 6. Java Günlüğü - çıkış kaydediciye özel bir günlük dosyasına nasıl yönlendirilir?
- 7. java.util.logging bir dosyaya nasıl yönlendirilir?
- 8. Bir akışa XmlWriter kullanarak System.Xml.Linq.XElement nasıl yazılır
- 9. MemoryStream - Kapalı bir Akışa erişilemiyor
- 10. ana sayfaya nasıl yönlendirilir
- 11. Gwt istemcisinde nasıl yönlendirilir?
- 12. XDocument'i Akışa Dönüştürme
- 13. Github sayfaları özel html ana sayfasına nasıl yönlendirilir?
- 14. Homebrew doktor uyarıları
- 15. JavaScript kullanarak bir sayfa nasıl yönlendirilir?
- 16. Ostream nesnesini geçici bir arabelleğe nasıl yönlendirilir?
- 17. Sistemd hizmetinin çıktısını bir dosyaya nasıl yönlendirilir
- 18. SharePoint Online'da bir URL nasıl yönlendirilir?
- 19. Bir RTMP akışını istemcilere nasıl yönlendirilir?
- 20. Tek bir url nginx'te nasıl yönlendirilir?
- 21. Angular2: API bir hata döndürürse nasıl yönlendirilir?
- 22. Başka bir eylem veya rotaya nasıl yönlendirilir?
- 23. Bir denetleyici eyleminde aspx sayfasına nasıl yönlendirilir
- 24. Kullanıcı farklı bir sayfaya nasıl yönlendirilir?
- 25. OSM dosyasında nasıl bir yol yönlendirilir?
- 26. Google uyarıları gibi bir şeyi nasıl düzenleyebiliriz?
- 27. WebSocket'ı geçerli sunucuya nasıl yönlendirilir
- 28. scrapy- nasıl yönlendirilir Yönlendirme (302)
- 29. Geri izleme algoritması akışa nasıl dönüştürülür?
- 30. Akışa "enter tuşuna bas" nasıl yazılır?
Sadece bir not - Bu io.StringIO tanımlanan Fileno() var ama uygulanmadı ise StringIO.StringIO, böyle fileno gibi yöntemleri() tanımlı yok io.StringIO farklı bir uygulamasıdır. – eacousineau