मुझे कुछ विशेष डेटा संरचनाओं को पार्स करने की आवश्यकता है। वे कुछ हद तक एक तरह-सी प्रारूप है कि इस तरह मोटे तौर पर लग रहा है में हैं:कोड (पाइथन में) का विश्लेषण कैसे करें?
Group("GroupName") {
/* C-Style comment */
Group("AnotherGroupName") {
Entry("some","variables",0,3.141);
Entry("other","variables",1,2.718);
}
Entry("linebreaks",
"allowed",
3,
1.414
);
}
मैं इस बारे में जाने के लिए कई तरीके के बारे में सोच सकते हैं। मैं नियमित अभिव्यक्तियों का उपयोग कर कोड को 'टोकननाइज़' कर सकता था। मैं एक समय में एक चरित्र कोड पढ़ सकता था और अपनी डेटा संरचना बनाने के लिए एक राज्य मशीन का उपयोग कर सकता था। मैं अल्पविराम से छुटकारा पा सकता हूं और रेखा रेखा को लाइन से पढ़ सकता हूं। मैं कुछ रूपांतरण स्क्रिप्ट लिख सकता हूं जो इस कोड को निष्पादन योग्य पायथन कोड में परिवर्तित करता है।
क्या इस तरह की फाइलों को पार्स करने के लिए कोई अच्छा पायथनिक तरीका है?
आप इसे पार्स करने के बारे में कैसे जाएंगे?
यह इस सामान्य फ़ाइल प्रारूप के बारे में स्ट्रिंग को पार्स करने के बारे में अधिक सामान्य प्रश्न है।
[यह आलेख] (http://nedbatchelder.com/text/python-parsers.html) आपके लिए ब्याज का हो सकता है। –