Ben html belgelerini oluşturmak istediğim oldukça büyük bir kod tabanı miras aldım. Python'da yazıldığından beri sfenks kullanmaya karar verdim, çünkü kodun kullanıcıları sfenks ile oluşturulan python-belgeselin tasarımına ve işlevselliğine alıştılar. Rst dosyalarını otomatik olarak oluşturmak için sphinx-apidoc
komutunu kullandım. Sfenksin kodu bulabilmesi için modül yolunu sys.path
'a aktardım. Şimdiye kadar çok iyi. Ancak, html'yi make html
komutunu kullanarak oluşturmaya çalıştığımda, birçok tracebackin çıkması ve kod tabanındaki bazı örneklerin çalıştırılması gibi görünüyor. Bunun nedeni ne olabilir ve bunun olmasını nasıl engelleyebilirim?Sfenks kodumu 'html yap' komutunu çalıştırıyor mu?
6
A
cevap
8
autodoc kullanırken, Sphinx belgelenen modülleri içe aktarır, böylece tüm modül düzeyinde kod yürütülür. Bu her zaman "html yap" olur. Bu anlamda, Sphinx kodunuzu "çalıştırır".
Hataları değiştirmek için kodunuzu biraz farklı bir şekilde düzenlemeniz gerekebilir (modül düzeyi kodu işlevlere taşıyın). Ne olabileceğine bir örnek için bkz. this question.
Bu benim tahminimdir, ancak hikayenin tamamı olmayabilir. Ek bilgi olmadan daha fazla söylemek zor.
0
def main():
print('hello world')
if __name__ == '__main__':
main()
Bu şekilde kodunuz çalışmaz.
+0
Biraz daha fazla açıklama muhtemelen OP ve diğerlerine yardımcı olur –
İlgili konular
- 1. Hotkey, SAS'ta programı çalıştırıyor mu?
- 2. Console.WriteLine kodumu hızlandırıyor mu?
- 3. Tüm parametreleri alan komut dosyasında nohup komutunu çalıştırıyor
- 4. Maven, "test" aşamasının başlangıcında "bağımlılık: ağaç" komutunu çalıştırıyor
- 5. html oluştururken, virtualenv modüllerine sfenks nasıl bakılır?
- 6. Özelleştirme Sfenks arama kutusuna
- 7. sfenks metni
- 8. Sfenks yerleşik temalar bulunamadı
- 9. Bellekteki MongoDB'yi çalıştırıyor RAM
- 10. PM2, ek süreçler çalıştırıyor
- 11. Elyt kodumu python
- 12. HTML kodumu Firebug uygulamasında çalıştırmaya çalışırken hata oluştu
- 13. Braketleri Editörden Kodumu Sarma (HTML, CSS, JS veya PHP)
- 14. ASP.NET için gecikmeli İş async kodu çalıştırıyor mu?
- 15. SSRS, birden çok sorguyu aynı anda çalıştırıyor mu?
- 16. Lehçe Sfenks için arama?
- 17. Sfenks TOC ağacını değiştirin
- 18. Sfenks: çapraz referans öğesi
- 19. Sfenks: Sınıfları TOC
- 20. Sfenks dokümantasyon değişkenleri
- 21. Düşünme Sfenks arama
- 22. Düşünce sfenks bulanık arama?
- 23. requirejs script'i çalıştırıyor progress
- 24. apscheduler iki kez çalıştırıyor
- 25. Yap Dosyamı
- 26. Sadece benim kodumu etkinleştir
- 27. Sml kodumu nasıl zamanlarım?
- 28. Eclipse kodumu sildi
- 29. "Siteye giriş yap" sayfası oluştur
- 30. Facebook ile giriş yap?
Kod tabanında, örneğin, bir __ __ __ __ 'gibi kod örnekleri var mı? Ya da doctest'ler (bilirsiniz, bir doktora test eder)? –
İyi soru. Tekrar çalıştırmak için tereddüt ediyorum. Sfenks-apidoc için kesin komut şuydu: sphinx-apidoc -f-F -o. ../ src', html’i yapar. Bu, doktrinlerin uygulanmasını başlatır mı? Eğer öyleyse, bunu yapmasını nasıl engelleyebilirim? – AME
(1) '__main__' içinde bir kodunuz olup olmadığını kontrol edin; (2) ['doctest'] (http://sphinx.pocoo.org/ext/doctest.html) uzantısını kullanmıyorsanız, iyi olmalısınız. Emin olmak için yapılandırma dosyanızı kontrol edin. –