Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Python

पायथन में कमांड लाइन आर्गुमेंट कैसे जोड़ें


परिचय..

पायथन में एक बहुत शक्तिशाली argparse मॉड्यूल है जो कमांड लाइन आर्गुमेंट को पार्स करने के लिए फ़ंक्शन प्रदान करता है। यदि हम बिना अधिक इंटरैक्शन या कोड के OS कमांड लाइन से उपयोगकर्ता इनपुट प्राप्त करना चाहते हैं या एक प्रोग्राम कोड करना चाहते हैं जो कमांड लाइन से पैरामीटर स्वीकार करता है उदा. पार्स करने के लिए URL प्रदान करें या S3 बकेट में अपलोड करने के लिए फ़ाइल स्वीकार करें तो argparse का उपयोग न्यूनतम प्रयास से किया जा सकता है।

बुनियादी उपयोग

  • उन आर्गुमेंट को परिभाषित करें जिन्हें आपका कोड स्वीकार करने वाला है।
  • परिणाम ऑब्जेक्ट लौटाने के लिए आर्गुमेंट पार्सर को कॉल करें।
  • आर्गुमेंट का उपयोग करें।

संक्षेप में, आर्गुमेंट पार्सर की संरचना नीचे जैसी दिखती है।

def main( parameters): << Logic here >> if __name__ == '__main__': << 1. Define argument parser >> << 2. Parse the arguements >> << 3. Validation >> << 4. call main (parameters) >>

मुख्य फ़ंक्शन जानता है कि हमारे कोड का प्रवेश बिंदु क्या है। __name__ == '__main__' सेक्शन केवल तभी निष्पादित होता है जब कोड सीधे कॉल किया जाता है।

  • एक प्रोग्राम बनाएं जो केवल एक आर्गुमेंट स्वीकार करेगा - टेनिस खिलाड़ी स्ट्रिंग के रूप में।
import argparse def get_args(): \"\"\" Function : get_args .add_argument में उपयोग किए जाने वाले पैरामीटर्स 1. metavar - उपयोगकर्ता को डेटा प्रकार के बारे में संकेत दें। - डिफ़ॉल्ट रूप से, सभी आर्गुमेंट स्ट्रिंग्स हैं। 2. type - वास्तविक पायथन डेटा प्रकार - (str के आसपास उद्धरण की कमी पर ध्यान दें) 3. help - उपयोग के लिए पैरामीटर का संक्षिप्त विवरण \"\"\" parser = argparse.ArgumentParser( description='Example for Two positional arguments', formatter_class=argparse.ArgumentDefaultsHelpFormatter) # हमारा पहला आर्गुमेंट जोड़ना player name string प्रकार का parser.add_argument('player', metavar='player', type=str, help='Tennis Player') return parser.parse_args() # main परिभाषित करें def main(player): print(f" *** The {player} had won 20 grandslam titles.") if __name__ == '__main__': args = get_args() main(args.player)

a) अब जब आप इस प्रोग्राम को कमांड लाइन से बिना कोई पैरामीटर पास किए निष्पादित करते हैं यानी यदि कुछ नहीं दिया गया, तो यह प्रोग्राम को उचित तरीके से आमंत्रित करने के बारे में एक संक्षिप्त उपयोग विवरण प्रिंट करेगा।

In [3]: run <>.ipynb usage: ipython [-h] player ipython: error: the following arguments are required: player An exception has occurred, use %tb to see the full traceback.

b) यदि हम एक से अधिक आर्गुमेंट प्रदान करते हैं, तो यह फिर शिकायत करता है। प्रोग्राम दूसरे आर्गुमेंट के बारे में शिकायत करता है जिसे परिभाषित नहीं किया गया है।

c) केवल जब हम प्रोग्राम को ठीक एक आर्गुमेंट देते हैं तो यह चलेगा

2. एक प्रोग्राम बनाएं जो केवल दो आर्गुमेंट स्वीकार करेगा - टेनिस खिलाड़ी स्ट्रिंग के रूप में और खिलाड़ी द्वारा जीते गए ग्रैंड स्लैम खिताब पूर्णांक के रूप में।

उदाहरण

import argparse def get_args(): \"\"\" Function : get_args .add_argument में उपयोग किए जाने वाले पैरामीटर्स 1. metavar - उपयोगकर्ता को डेटा प्रकार के बारे में संकेत दें। - डिफ़ॉल्ट रूप से, सभी आर्गुमेंट स्ट्रिंग्स हैं। 2. type - वास्तविक पायथन डेटा प्रकार - (str के आसपास उद्धरण की कमी पर ध्यान दें) 3. help - उपयोग के लिए पैरामीटर का संक्षिप्त विवरण \"\"\" parser = argparse.ArgumentParser( description='Example for Two positional arguments', formatter_class=argparse.ArgumentDefaultsHelpFormatter) # हमारा पहला आर्गुमेंट जोड़ना player name string प्रकार का parser.add_argument('player', metavar='player', type=str, help='Tennis Player') # हमारा दूसरा आर्गुमेंट जोड़ना player titles integer/number प्रकार का। parser.add_argument('titles', metavar='titles', type=int, help='Tennis Player Grandslam Titles') return parser.parse_args() # main परिभाषित करें def main(player, titles): print(f" *** The {player} had won {titles} grandslam titles.") if __name__ == '__main__': args = get_args() main(args.player, args.titles) 

अब अपना टर्मिनल खोलें और प्रोग्राम निष्पादित करें। यदि आर्गुमेंट पास नहीं किए गए हैं, तो स्क्रिप्ट स्पष्ट संदेश के साथ त्रुटि वापस फेंक देगी।

आउटपुट

<<< python test.py usage: test.py [-h] player titles test.py: error: the following arguments are required: player, titles <<< python test.py federer 20 *** The federer had won 20 grandslam titles.

  1. पायथन में चार्ट्स में लीजेंड (दंतकथा) जोड़ने का तरीका पायथन में चार्ट्स में लीजेंड (दंतकथा) जोड़ने का तरीका

    परिचय चार्ट का मुख्य उद्देश्य डेटा को आसानी से समझाना है। जब ग्राफ में बहुत सारी जानकारी हो, तो लीजेंड (दंतकथा) प्रासंगिक जानकारी प्रदर्शित करके समझ में सुधार करती है। Matplotlib में लीजेंड जोड़ना 1. डेटा तैयार करें import matplotlib.pyplot as plt mobile = [iPhone, Galaxy, Pixel] units_sold = ((

  1. Windows Terminal में Custom Command Line कैसे जोड़ें Windows Terminal में Custom Command Line कैसे जोड़ें

    Windows Terminal के साथ, कंपनी कमांड-लाइन आधारित सभी उपयोगिताओं को एक UWP शेल के तहत लाने की कोशिश कर रही है। बॉक्स से बाहर, इसमें Windows PowerShell और Windows Command Prompt शामिल हैं – लेकिन अगर कोई चाहता है, तो वे एक और कमांड-लाइन टूल भी शामिल कर सकते हैं। इसमें Git Bash, WSL कमांड लाइन, Anacond

  1. Python में पाथ कैसे जोड़ें? Python में पाथ कैसे जोड़ें?

    Python एक प्रोग्रामिंग भाषा है जिसे पहली बार 1991 में जारी किया गया था। इसका एक एप्लिकेशन है जिसका उपयोग कई ऑपरेटिंग सिस्टम पर किया जा सकता है और डेवलपर्स इस पर नया कोड लिख और विकसित कर सकते हैं। Python विशाल संभावनाओं के कारण सबसे व्यापक रूप से उपयोग की जाने वाली प्रोग्रामिंग भाषाओं में से एक है जो