हमें यह पता लगाना होगा कि हमारा कोड एक सीपीथन निष्पादन योग्य के तहत चल रहा है, जिसे प्रोग्रामिंग के साथ डिबगिंग सक्षम बनाया गया है। sys
मॉड्यूल में उबंटू 14.04 के कम से कम python3.4-dbg
पर कोई जानकारी नहीं प्रतीत होती। sys.flags.debug
0 पर सेट है। इसका कारण यह है कि हमारा कोड असम्बद्ध वास्तव में पायथन के डीबग संस्करणों को क्रैश करता है। अद्यतन: विशेष रूप से कोड सी पक्ष पर एक दावा त्रुटि के साथ दुर्घटनाग्रस्त हो जाता है।पाइथन में क्या सीपीथन निष्पादन योग्य डीबग संस्करण है, यह जानने के लिए कैसे?
निश्चित रूप से 'd' in sys.executable
देखने से बेहतर होना चाहिए। python3.4-dbg
का उपयोग कर
>>> import sysconfig
>>> sysconfig.get_config_var('Py_DEBUG')
0
दूसरी ओर:
वाह के लिए हो सकता है, कि पता नहीं था। +1 – vaultah
यह उन कारणों में से एक है जिनसे मैं सी asserts से नफरत करता हूं - किसी को पता था कि चीजें गलत हो सकती हैं लेकिन इसे संभालने के बजाय इसे परीक्षण करने का विकल्प चुना गया है ** डीबग में केवल ** बनाता है और चीजें वितरित करने योग्य में नरक में जा सकती हैं कोड - * (रेंट ओवर, स्पलीन वेंटेड)! * –
अयोग्य हां, लेकिन कम से कम यह वास्तविक ऑपरेटिंग सिस्टम पर काम करता है, मुझे sysconfig या उनके अर्थों में Py_DEBUG और NDEBUG के बारे में पता नहीं था, धन्यवाद। –