ভূমিকা
যদি আমরা দুটি সংখ্যা ওপর অ্যারিথমেটিক অপারেশন করার প্রোগ্রাম লিখি, তবে সেগুলোকে দুটি পজিশনাল আর্গুমেন্ট হিসেবে সংজ্ঞায়িত করা যায়। কিন্তু যেহেতু তারা একই ধরনের/পাইথন ডেটা টাইপের আর্গুমেন্ট, তাই nargs অপশন ব্যবহার করে আর্গপার্সকে বলা যেতে পারে যে আপনি একই টাইপের ঠিক দুটি মান চান।
কীভাবে করবেন
১. দুটি সংখ্যা বিয়োগ করার একটি প্রোগ্রাম লিখি (দুইটি আর্গুমেন্ট একই টাইপের)।
উদাহরণ
import argparse
def get_args():
"""Function: get_args
.add_argument-এ ব্যবহৃত প্যারামিটারগুলো:
1. metavar - ইউজারের জন্য ডেটা টাইপ সম্পর্কে হিন্ট দেয়।
2. type - আসলে পাইথন ডেটা টাইপ (quotes ছাড়া)।
3. help - প্যারামিটারের সংক্ষিপ্ত বিবরণ usage-র জন্য।
4. nargs - ঠিক nargs সংখ্যক মান গ্রহণ করবে।
"""
parser = argparse.ArgumentParser(
description='Example for nargs',
formatter_class=argparse.ArgumentDefaultsHelpFormatter)
parser.add_argument('numbers', metavar='int', nargs=2, type=int, help='Numbers of type int for subtraction')
return parser.parse_args()
def main():
args = get_args()
num1, num2 = args.numbers
print(f" *** Subtracting two number - {num1} - {num2} = {num1 - num2}")
if __name__ == '__main__':
main()
nargs=2ঠিক দুটি মান গ্রহণ করবে।- প্রতিটি মান ইন্টিজার হিসেবে পাঠাতে হবে, অন্যথায় প্রোগ্রাম এরর দেবে।
চলুন প্রোগ্রামটি ভিন্ন ভিন্ন ভ্যালু দিয়ে রান করি।
আউটপুট
>>> python test.py 30 10 *** Subtracting two number - 30 - 10 = 20 >>> python test.py 10 30 *** Subtracting two number - 10 - 30 = -20 >>> python test.py 10 10 30 usage: test.py [-h] int int test.py: error: unrecognized arguments: 30 >>> python test.py usage: test.py [-h] int int test.py: error: the following arguments are required: int