title: संपर्क पुस्तक description: एक CLI ऐप जो लूप में चलता है ताकि आप एक सत्र के दौरान संपर्क जोड़, खोज और सूचीबद्ध कर सकें।
संपर्क पुस्तक
Pip अरे! मेरे संपर्क छह स्टेशनों में बिखरे हुए हैं और मैं उन्हें खोजता रहता हूँ। नंबर, ईमेल, सब जगह। क्या आप एक सरल संपर्क पुस्तक बना सकते हैं जिसे मैं टर्मिनल में चला सकूँ? लोगों को जोड़ें, नाम से खोजें, सभी को सूचीबद्ध करें। कुछ खास नहीं, बस कुछ ऐसा जो वास्तव में काम करे 🙏
आप क्या बना रहे हैं
Commands: add / search / list / quit
> add
Name: अजय कुमार
Phone: 07700 900123
Email: [email protected]
Saved.
> search
Name: अजय
अजय कुमार - 07700 900123 - [email protected]
> list
1. अजय कुमार - 07700 900123
2. ...
> quitआपको क्या चाहिए
- Dictionaries - प्रत्येक संपर्क एक dictionary है; संपर्क पुस्तक उनकी एक सूची है
- Lists - सभी संपर्क एक सूची में जिसे आप लूप कर सकते हैं
- Functions - एक फ़ंक्शन प्रति कमांड चीजों को साफ और पठनीय रखता है
- Control flow - एक लूप जो तब तक चलता है जब तक उपयोगकर्ता "quit" नहीं लिखता
- Strings - case-insensitive खोज, नाम फॉर्मेटिंग
संकेत
प्रत्येक संपर्क को एक dictionary के रूप में स्टोर करें। "name", "phone", "email" जैसी keys। सभी संपर्कों को लूप के बाहर एक सूची में रखें ताकि वे कमांड के बीच बने रहें।
एक while लूप कमांड चेक के साथ प्राकृतिक संरचना है। कमांड पढ़ें, सही फ़ंक्शन को कॉल करें, दोहराएं। जब उपयोगकर्ता "quit" लिखता है तो बाहर निकलें।
खोज के लिए, आंशिक मिलान सटीक से अधिक उपयोगी है। यह जाँचना कि क्या खोज शब्द नाम में कहीं दिखाई देता है - case-insensitively - इसका मतलब है कि "ajay" "अजय कुमार" को खोजता है।
आगे बढ़ना
एक बार मूल लूप काम करने लगे:
- Save और load करें। जब उपयोगकर्ता quit करता है, सभी संपर्कों को एक JSON फ़ाइल में लिखें। जब स्क्रिप्ट शुरू होती है, उस फ़ाइल को लोड करें यदि वह मौजूद है। इसके लिए files अध्याय की आवश्यकता है।
- एक संपर्क हटाएं। एक
deleteकमांड जोड़ें जो नाम से एक संपर्क को हटाता है। - सूची को सॉर्ट किया गया। सूची आउटपुट को नाम के अनुसार वर्णानुक्रम में सॉर्ट करें फिर प्रिंट करें।

