পাইথনের sys.argv ব্যবহার করে কমান্ড লাইন আর্গামেন্ট গ্রহণ করে ফাংশন কল করা যায়।
উদাহরণ (fubar.py)
import sys
def print_funcargs(arg1, arg2, arg3):
print(arg1 + ' ' + arg2 + ' ' + arg3)
if __name__ == "__main__":
a = sys.argv[1]
b = sys.argv[2]
c = sys.argv[3]
print_funcargs(a, b, c)
print(sys.argv)
কমান্ড লাইন থেকে রান
$ python fubar.py I adore books
আউটপুট
I adore books ['fubar.py', 'I', 'adore', 'books']
ব্যাখ্যা
sys.argv[0]— স্ক্রিপ্টের নাম।sys.argv[1:]— কমান্ড লাইন আর্গামেন্টগুলো (লিস্ট আকারে)।- স্পেস দিয়ে আলাদা করা হয়; কোটেশন ব্যবহার করে স্পেসযুক্ত আর্গামেন্ট দেয়া যায়।
উন্নত পদ্ধতি: argparse মডিউল
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('arg1')
parser.add_argument('arg2')
parser.add_argument('arg3')
args = parser.parse_args()
print_funcargs(args.arg1, args.arg2, args.arg3)
argparse আটোমেটিক হেল্প, টাইপ চেকিং, ডিফল্ট মান, অপশনাল আর্গামেন্ট সাপোর্ট করে।