फ्लैशकार्ड अध्ययन ऐप
Zee हे, तो। मेरी प्रोपल्शन सिस्टम्स की परीक्षा छह हफ्तों में है और मैं खुद को टेस्ट करके बहुत बेहतर सीखता हूँ। क्या आप एक फ्लैशकार्ड ऐप बना सकते हैं? यह एक फ़ाइल से कार्ड लोड करे, मुझे सामने वाला भाग दिखाए, मैं अपना उत्तर टाइप करूँ, और यह मुझे बताए कि मैंने सही उत्तर दिया या नहीं। और मैं चाहता हूँ कि यह मेरी प्रगति को सेव करे ताकि मैं वहीं से शुरू कर सकूँ जहाँ मैंने छोड़ा था। प्लीज़ 🙏
आप क्या बना रहे हैं
Deck: python-basics.json (12 cards)
Front: What does len() return for a string?
Your answer: the number of characters
Correct!
Front: What type does input() always return?
Your answer: int
Incorrect. The answer is: str
---
Session complete: 8/12 correct.
Progress saved.आपको क्या चाहिए होगा
- क्लासेस और ऑब्जेक्ट्स — एक
Cardक्लास और एकDeckक्लास आपको डेटा को मॉडल करने का एक साफ-सुथरा तरीका देती है - फ़ाइलें और एक्सेप्शन्स — JSON फ़ाइल से डेक को लोड और सेव करना, पहली बार चलाने पर अनुपस्थित फ़ाइल को संभालना
- मॉड्यूल और स्टैंडर्ड लाइब्रेरी — फ़ाइल हैंडलिंग के लिए
json, शफल करने के लिएrandom - डिक्शनरीज़ और लिस्ट्स — क्लासेस में लपेटने से पहले अंतर्निहित संरचना
- कंट्रोल फ्लो — डेक के माध्यम से लूप करना, सही या गलत पर ब्रांच करना
संकेत
क्लासेस से नहीं, डेटा से शुरू करें। एक कार्ड दो स्ट्रिंग्स है: सामने और पीछे। एक डेक कार्ड्स की एक लिस्ट है। पहले उसे काम करवाएँ, फिर अगर आप एक साफ-सुथरा इंटरफ़ेस चाहते हैं तो उसे क्लासेस में लपेटें।
JSON फ़ाइल फॉर्मेट को संभालता है। json.load() एक फ़ाइल को पाइथन लिस्ट या डिक्शनरी में पढ़ता है। json.dump() इसे वापस लिखता है। json मॉड्यूल स्टैंडर्ड लाइब्रेरी में है।
फ़ाइल लोड को try/except में लपेटें। पहली बार जब स्क्रिप्ट चलती है, तो सेव फ़ाइल मौजूद नहीं होगी। FileNotFoundError को पकड़ने से आप क्रैश होने के बजाय एक खाली डेक से सहजता से शुरू कर सकते हैं।
आगे बढ़ते हुए
एक बार जब मुख्य अध्ययन लूप काम करने लगे:
- गलत उत्तरों को दोहराएँ। ट्रैक करें कि प्लेयर ने कौन से कार्ड गलत किए और सत्र के अंत में उनके माध्यम से फिर से लूप करें।
- एकाधिक डेक। एक फ़ोल्डर में उपलब्ध
.jsonफ़ाइलों को सूचीबद्ध करें और उपयोगकर्ता को चुनने दें कि किस डेक का अध्ययन करना है। - स्पेस्ड रिपीटिशन। रिकॉर्ड करें कि प्रत्येक कार्ड का कितनी बार सही उत्तर दिया गया। जिन कार्ड्स का सही उत्तर कम बार दिया गया है, उन्हें अधिक बार दिखाएँ।

