python use arguments code example

Example 1: read argument from terminal

#!/usr/bin/python

import sys

print 'Number of arguments:', len(sys.argv), 'arguments.'
print 'Argument List:', str(sys.argv)

#Terminal
# $ python test.py arg1 arg2 arg3

#print
#Number of arguments: 4 arguments.
#Argument List: ['test.py', 'arg1', 'arg2', 'arg3']

Example 2: python arguments

import sys

print ("the script has the name %s" % (sys.argv[0])

Example 3: python function arguments

#*args and **kwargs are normally used as arguments when calling the function.

#*args returns as tuple and **kwargs returns as dictionary.

#*args and **kwargs  let you write functions with variable number of arguments in python.

def func(required,*args,**kwargs):
    return f"{required} {args} {kwargs}"
  
func("Nagendra",5,32,2,1,23,) #output == 'Nagendra (5, 32, 2, 1, 23) {}'
func("Nagendra",5,32,2,1,23,key1="55",key2="75") #output == "Nagendra (5, 32, 2, 1, 23) {'key1': '55', 'key2': '75'}"

#Very understable example of args.
#Given n number of arguments in a function calculate its average
def average(*args):
  '''
  As we already know *args means collection of values in a tuple.
  INPUT: arguments are given. example average(4,10,) 
  OUTPUT: average of two numbers (4+10)/2 == 14
  '''
  return sum(args)/len(args)

average(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15) #output == 8.0

Example 4: cli args python

import argparse

parser = argparse.ArgumentParser(description='Process some integers.')
parser.add_argument('integers', metavar='N', type=int, nargs='+',
                   help='an integer for the accumulator')
parser.add_argument('--sum', dest='accumulate', action='store_const',
                   const=sum, default=max,
                   help='sum the integers (default: find the max)')

args = parser.parse_args()
print(args.accumulate(args.integers))