I am new to python. Now I need to declare the array of size 20 and pass the array to a function.
The function expecting the array is as:
function(*args)
The args is an input to the function().
Can anyone help me, how to pass array in python?
When you say "array" I assume you mean a Python list, since that's often used in Python when an array would be used in other languages. Python actually has several array types: list, tuple, and array; the popular 3rd-party module Numpy also supplies an array type.
To pass a single list (or other array-like container) to a function that's defined with a single *args parameter you need to use the * operator to unpack the list in the function call. 
Here's an example that runs on Python 2 or Python 3. I've made a list of length 5 to keep the output short.
def function(*args):
    print(args)
    for u in args:
        print(u)
#Create a list of 5 elements
a = list(range(5))
print(a)
function(*a)        
output
[0, 1, 2, 3, 4]
(0, 1, 2, 3, 4)
0
1
2
3     
4 
Note that when function prints args the output is shown in parentheses (), not brackets []. That's because the brackets denote a list, the parentheses denote a tuple. The *a in the call to function unpacks the a list into separate arguments, but the *arg in the function definition re-packs them into a tuple.                                                                       
For more info on these uses of * please see Arbitrary Argument Lists and Unpacking Argument Lists in the Python tutorial. Also see What does ** (double star) and * (star) do for Python parameters?.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With