title: व्यक्तिगत डायरी description: एक स्क्रिप्ट जो दिनांकित प्रविष्टियों को एक फ़ाइल में लिखती है और आपको पुरानी प्रविष्टियों को पढ़ने देती है।
व्यक्तिगत डायरी
Dex अरे। ईमानदारी से कहूं तो मिशन बहुत कुछ रहा है और मुझे एक लॉग रखने का मन था। क्या आप एक सरल जर्नल ऐप बना सकते हो? मैं एक नई प्रविष्टि टाइप करना चाहता हूं, इसे दिनांक के साथ सहेजना चाहता हूं, और पुरानी प्रविष्टियों को वापस पढ़ने में सक्षम होना चाहता हूं। कुछ भी जटिल नहीं। बस अपने विचारों को निकालने के लिए कुछ चाहिए ✍️
आप क्या बना रहे हैं
Commands: new / read / quit
> new
2026-05-24
आज सुबह बहुत उत्पादक रही। इन्वेंटरी मैनेजर प्रोजेक्ट पूरा किया।
JSON सीरिएलाइजेशन को सही तरीके से समझ गया।
[एक खाली लाइन पर Enter दबाएं सहेजने के लिए]
Entry saved.
> read
--- 2026-05-24 ---
आज सुबह बहुत उत्पादक रही। इन्वेंटरी मैनेजर प्रोजेक्ट पूरा किया।
JSON सीरिएलाइजेशन को सही तरीके से समझ गया।
--- 2026-05-23 ---
...
> quitआपको क्या चाहिए
- Files and exceptions - नई प्रविष्टियों के लिए append mode, पूरी फ़ाइल वापस पढ़ना, पहली बार चलाने पर फ़ाइल न मिलने को संभालना
- Modules and the standard library - आज की तारीख को स्ट्रिंग के रूप में पाने के लिए
datetime - Strings - दिनांक हेडर को फॉर्मेट करना, फ़ाइल सामग्री को प्रविष्टियों में विभाजित करना
- Control flow - कमांड लूप, एक प्रविष्टि लिखने के लिए मल्टी-लाइन इनपुट लूप
- Output and input
संकेत
Append mode मुख्य कुंजी है। "a" के साथ एक फ़ाइल खोलना बिना वहां मौजूद चीजों को छुए अंत में जोड़ता है। इसी तरह नई प्रविष्टियां पुरानी को हटाए बिना जाती हैं।
datetime.date.today() आपको दिनांक देता है। इसे प्रविष्टि हेडर के रूप में उपयोग करने के लिए str() या एक f-string के साथ एक स्ट्रिंग में बदलें। datetime मॉड्यूल मानक लाइब्रेरी में है।
लिखने से पहले प्रविष्टि एकत्र करें। उपयोगकर्ता को कई पंक्तियां टाइप करने दें, प्रत्येक को एक सूची में जोड़ें। जब वे एक खाली पंक्ति सबमिट करते हैं, तो सूची को जोड़ें और पूरी प्रविष्टि एक बार में लिखें।
आगे बढ़ना
एक बार कोर जर्नल काम करने के बाद:
readको सीमित करें कि क्या दिखाता है। हमेशा पूरी फ़ाइल प्रिंट करना जल्दी जटिल हो जाता है। डिफ़ॉल्ट रूप से केवल अंतिम तीन प्रविष्टियां दिखाएं, अधिक दिखाने का विकल्प सहित।- प्रविष्टियों को खोजें। एक
searchकमांड जोड़ें जो किसी कीवर्ड युक्त किसी भी प्रविष्टि को प्रिंट करता है। - प्रविष्टि प्रति शब्द गणना। प्रदर्शित करते समय दिखाएं कि प्रत्येक प्रविष्टि में कितने शब्द हैं।

