目次
- 1 1. argparse भनेको के हो? Python मा आधारभूत प्रयोग
- 2 2. argparse प्रयोग गर्ने कारण: CLI उपकरणको लागि उत्तम विकल्प
- 3 3. argparse को आधारभूत संरचना: चरण अनुसार व्याख्या
- 4 4. उदाहरण: argparse प्रयोग गरेर बनाइएको सरल Python कार्यक्रम
- 5 5. argparse को थाहा हुनुपर्ने सुविधाहरू
- 6 6. argparse मा त्रुटि ह्यान्डलिंग र डिबगिङ
- 7 7. argparse को वास्तविक संसारमा प्रयोगका उदाहरणहरू
- 8 8. सारांश
1. argparse भनेको के हो? Python मा आधारभूत प्रयोग
argparse भनेको के हो
argparse
Python को मानक पुस्तकालय हो र कमाण्ड‑लाइन आर्गुमेन्टहरूलाई प्रक्रिया गर्ने उपकरण हो। प्रोग्राम चलाउँदा, प्रयोगकर्ताले निर्दिष्ट गर्ने कमाण्ड‑लाइन आर्गुमेन्टहरूलाई सजिलै प्राप्त गरी, विश्लेषण गरी, प्रोग्रामको व्यवहारलाई लचिलो रूपमा अनुकूलन गर्न सकिन्छ। उदाहरणका लागि, फाइलको पथ वा सेटिङ विकल्पहरूलाई कमाण्ड‑लाइनबाट निर्दिष्ट गर्न सकिएमा, प्रयोगमैत्री CLI उपकरण निर्माण गर्न सकिन्छ।import argparse
parser = argparse.ArgumentParser(description="फाइल प्रक्रिया कार्यक्रम")
parser.add_argument("input_file", help="प्रक्रिया गर्ने फाइलको पथ")
args = parser.parse_args()
print(f"प्रक्रिया गर्ने फाइल: {args.input_file}")
यो कोडमा, प्रयोगकर्ताले कमाण्ड‑लाइनबाट निर्दिष्ट गरेको फाइल पथलाई input_file
को रूपमा प्राप्त गरी, देखाउँछ। add_argument
द्वारा आर्गुमेन्ट परिभाषित गरिन्छ, र parse_args()
द्वारा विश्लेषण गर्ने सरल प्रक्रिया हो।2. argparse प्रयोग गर्ने कारण: CLI उपकरणको लागि उत्तम विकल्प
CLI उपकरण भनेको के हो?
CLI उपकरण भनेको कमाण्ड लाइनबाट सिधै सञ्चालन हुने कार्यक्रम हो, विशेष गरी प्रणाली व्यवस्थापन, डेटा प्रशोधन, र स्वचालनमा उपयोगी हुन्छ। Python मा CLI उपकरण बनाउँदा,argparse
धेरै उपयोगी हुन्छ। कारण भनेको, तर्क (आर्ग्युमेन्ट) को प्राप्ति र विश्लेषण स्वचालित हुन्छ, र त्रुटि ह्यान्डलिङ तथा सहयोग सन्देशको स्वचालित निर्माण पनि सम्भव हुन्छ।argparse को फाइदाहरू
- लचिलो तर्क सेटिङ: अनिवार्य तर्क र वैकल्पिक तर्कको परिभाषा सजिलो छ, र प्रयोगकर्ताले प्रयोग गर्न सहज कार्यक्रम डिजाइन गर्न सकिन्छ।
- स्वचालित त्रुटि ह्यान्डलिङ: यदि तर्क कम छन् वा अवैध मान निर्दिष्ट गरिएको छ भने,
argparse
स्वचालित रूपमा त्रुटि सन्देश देखाउँछ। - सहायता सन्देश:
argparse
डिफल्ट रूपमा--help
विकल्प प्रदान गर्दछ, जसले प्रयोगकर्तालाई प्रयोग विधि सजिलै जाँच्न मद्दत गर्छ।
--help
प्रयोग गर्दछ।$ python script.py --help
usage: script.py [-h] input_file
positional arguments:
input_file प्रक्रिया गर्ने फाइल
optional arguments:
-h, --help show this help message and exit

3. argparse को आधारभूत संरचना: चरण अनुसार व्याख्या
ArgumentParser को निर्माण
आर्ग्युमेन्टको विश्लेषण गर्नको लागि, पहिलो पटकArgumentParser
वस्तु बनाउनु पर्छ। यो वस्तु कार्यक्रमको विवरण र प्रयोग विधिको परिभाषा गर्दछ。parser = argparse.ArgumentParser(description="फाइल प्रक्रिया कार्यक्रम")
आर्ग्युमेन्टको थप
अर्को,add_argument()
प्रयोग गरेर आर्ग्युमेन्ट थप्नुहोस्। यहाँ, आर्ग्युमेन्ट अनिवार्य हो या वैकल्पिक हो भनेर निर्दिष्ट गर्न सकिन्छ। साथै,help
पैरामीटर प्रयोग गरेर व्याख्या पाठ थप्न पनि सम्भव छ।parser.add_argument("input_file", type=str, help="इनपुट फाइल निर्दिष्ट गर्नुहोस्")
parser.add_argument("--verbose", action="store_true", help="विस्तृत आउटपुट सक्षम गर्नुहोस्")
आर्ग्युमेन्टको विश्लेषण
अन्तमा,parse_args()
मेथ्य प्रयोग गरेर आर्ग्युमेन्ट विश्लेषण गर्नुहोस्। प्रयोगकर्ताले कमाण्ड लाइनबाट निर्दिष्ट गरेको आर्ग्युमेन्टargs
वस्तुमा सुरक्षित हुन्छ।args = parser.parse_args()
4. उदाहरण: argparse प्रयोग गरेर बनाइएको सरल Python कार्यक्रम
मूलभूत उदाहरण
तलको कोडargparse
प्रयोग गरेर बनाइएको सरल उदाहरण हो, जसले फाइलनाम र विस्तृत आउटपुट विकल्प लिने CLI उपकरण बनाउँछ।import argparse
parser = argparse.ArgumentParser(description="फाइल प्रक्रिया गर्ने कार्यक्रम")
parser.add_argument("file", help="कृपया फाइलको पथ निर्दिष्ट गर्नुहोस्")
parser.add_argument("--verbose", action="store_true", help="विस्तृत आउटपुट सक्षम गर्नुहोस्")
args = parser.parse_args()
if args.verbose:
print(f"फाइल '{args.file}' लाई विस्तृत मोडमा प्रक्रिया गर्दैछ")
else:
print(f"फाइल '{args.file}' लाई प्रक्रिया गर्दैछ")
यो कार्यक्रममा, --verbose
विकल्प प्रयोग गरेर विस्तृत मोडमा वा सामान्य मोडमा आउटपुट गर्ने बीच स्विच गरिन्छ।
5. argparse को थाहा हुनुपर्ने सुविधाहरू
परस्पर बहिष्कृत तर्कहरू(Mutually Exclusive Arguments)
परस्पर बहिष्कृत तर्कहरू भनेको, विशेष तर्कहरू एकै समयमा प्रयोग नहुनु सुनिश्चित गर्ने सुविधा हो। उदाहरणका लागि,--foo
र --bar
एकै साथ निर्दिष्ट नहुनु सुनिश्चित गर्न प्रतिबन्ध थप्ने अवस्थामा यो उपयोगी हुन्छ।parser = argparse.ArgumentParser(description="परस्पर बहिष्कृत तर्कहरूको उदाहरण")
group = parser.add_mutually_exclusive_group()
group.add_argument("--foo", action="store_true", help="foo लाई सक्रिय गर्नुहोस्")
group.add_argument("--bar", action="store_true", help="bar लाई सक्रिय गर्नुहोस्")
args = parser.parse_args()
सब कमाण्ड
सब कमाण्ड प्रयोग गरेर, कार्यक्रमको कार्यलाई विभिन्न सुविधाहरूमा विभाजन गरी व्यवस्थित गर्न सकिन्छ। उदाहरणका लागि,install
वा uninstall
जस्ता विभिन्न कार्यहरूलाई एउटै कार्यक्रममा चलाउन सकिन्छ।parser = argparse.ArgumentParser(description="सब कमाण्डको उदाहरण")
subparsers = parser.add_subparsers(dest="command")
install_parser = subparsers.add_parser('install')
install_parser.add_argument('package', help="स्थापना गर्नुपर्ने प्याकेजको नाम")
uninstall_parser = subparsers.add_parser('uninstall')
uninstall_parser.add_argument('package', help="अनइन्स्टल गर्नुपर्ने प्याकेजको नाम")
args = parser.parse_args()
if args.command == "install":
print(f"प्याकेज {args.package} स्थापित गरिँदैछ")
elif args.command == "uninstall":
print(f"प्याकेज {args.package} अनइन्स्टल गरिँदैछ")
6. argparse मा त्रुटि ह्यान्डलिंग र डिबगिङ
स्वचालित त्रुटि सन्देश
argparse
ले, तर्कहरू अभावमा छन् वा अवैध मान पास गरिएमा, स्वचालित रूपमा त्रुटि सन्देश उत्पन्न गर्दछ।$ python script.py
usage: script.py [-h] --input INPUT
script.py: error: the following arguments are required: --input
अनुकूलित त्रुटि सन्देश
केही अवस्थामा, पूर्वनिर्धारित त्रुटि सन्देश पर्याप्त नहुन सक्छ। अनुकूलित सन्देश थपेर, थप विस्तृत प्रतिक्रिया प्रदान गर्न सकिन्छ।parser = argparse.ArgumentParser(description="अनुकूलित त्रुटि सन्देशको उदाहरण")
parser.add_argument("--input", required=True, help="कृपया इनपुट फाइल निर्दिष्ट गर्नुहोस्")
try:
args = parser.parse_args()
except argparse.ArgumentError as err:
print(f"त्रुटि: {err}")

7. argparse को वास्तविक संसारमा प्रयोगका उदाहरणहरू
स्वचालन उपकरणहरूमा प्रयोग
argparse
फाइल प्रोसेसिङ र डेटा विश्लेषण जस्ता स्वचालन उपकरणहरूका लागि उपयुक्त छ। प्रयोगकर्ताहरूले कमाण्ड लाइनमा फाइल पथ र प्रोसेस मोड निर्दिष्ट गर्न सक्ने कारणले, लचिलो उपकरण निर्माण गर्न सकिन्छ।$ python data_processor.py --input data.csv --output results.json --verbose
ठूलो-स्तरका परियोजनाहरूमा प्रयोग
ठूलो-स्तरका परियोजनाहरूमा, सबकमाण्डहरू र परस्पर बहिष्कृत तर्कहरूलाई संयोजन गर्दा सम्पूर्ण प्रणालीको प्रयोगयोग्यता सुधार हुन्छ। उदाहरणका लागि, प्याकेज व्यवस्थापन प्रणाली जस्तै,install
र remove
जस्ता विभिन्न कार्यहरूलाई एउटै उपकरणमा समेट्न सकिन्छ।$ python package_manager.py install package_name
argparse
प्रयोग गर्दा, प्रयोगकर्ताहरूले सजिलै प्रणाली सञ्चालन गर्न सक्ने मात्र होइन, कोडको पुन: प्रयोगयोग्यता र मर्मत सम्भार क्षमताहरू पनि बढ्छन्।8. सारांश
argparse
प्रयोग गरेर, Python प्रोग्राममा लचिलो र शक्तिशाली कमाण्ड‑लाइन इन्टरफेस (CLI) कार्यान्वयन गर्न सकिन्छ। अनिवार्य आर्गुमेन्ट, वैकल्पिक आर्गुमेन्ट, सब‑कमाण्ड, एक्सक्लुसिभ आर्गुमेन्ट जस्ता सुविधाहरूको उपयोग गरेर, प्रयोगकर्ताहरूका लागि प्रयोग गर्न सजिलो र व्यवस्थापन गर्न सहज प्रोग्राम बनाउन सकिन्छ। विशेष गरी, ठूला परियोजनाहरू वा डेटा प्रोसेसिङको स्वचालन जस्ता विभिन्न परिदृश्यहरूमा यसको उपयोगी हुने अपेक्षा गरिन्छ। व्यावसायिक प्रयोगका उदाहरणहरू र प्रदर्शनलाई ध्यानमा राखेर कार्यान्वयन विधिहरू थाहा पाउँदा, प्रोग्रामको अनुकूलन सम्भव हुन्छ। साथै, त्रुटि ह्यान्डलिङ र सर्वोत्तम अभ्यासहरू लागू गरेर, प्रयोगकर्ताहरूले सजिलै त्रुटि पहिचान गर्न सक्ने उपकरणहरू पनि निर्माण गर्न सकिन्छ। यदि थप प्रश्नहरू छन् भने, कृपया निःशंक रूपमा जानकारी दिनुहोस्।