Hey! If you love Python and building Python apps as much as I do, let's connect on Twitter or LinkedIn. I talk about this stuff all the time!

Passing arguments in Python

In this article, we’ll explore how to pass arguments in Python and provide examples for each method.


Updated April 5, 2023

Passing arguments in Python is a fundamental concept that allows you to pass data into functions or methods for processing. In Python, you can pass arguments to a function in a variety of ways, including positional arguments, keyword arguments, and default arguments. In this article, we’ll explore how to pass arguments in Python and provide examples for each method.

Positional Arguments

Positional arguments are the most common way to pass arguments to a function in Python. With positional arguments, the order in which you pass the arguments matters. Here’s an example:

def greet(first_name, last_name):
    print(f"Hello, {first_name} {last_name}!")

greet("John", "Doe")

In this example, we define a function greet that takes two positional arguments, first_name and last_name. When we call the greet function, we pass in the arguments “John” and “Doe” in that order. The output of this program will be “Hello, John Doe!”.

Keyword Arguments

Keyword arguments are similar to positional arguments, but you specify the argument name along with the value. Keyword arguments are useful when you want to make it clear which argument is being passed to a function. Here’s an example:

def greet(first_name, last_name):
    print(f"Hello, {first_name} {last_name}!")

greet(last_name="Doe", first_name="John")

In this example, we call the greet function with keyword arguments. By using the argument names, we can pass the arguments in any order. The output of this program will be the same as the previous example, “Hello, John Doe!”.

Default Arguments

Default arguments are used when you want to provide a default value for an argument in case the caller doesn’t pass a value. Here’s an example:

def greet(first_name, last_name="Doe"):
    print(f"Hello, {first_name} {last_name}!")

greet("John")

In this example, we define a default value for the last_name argument. When we call the greet function with only one argument, the default value is used for the last_name argument. The output of this program will be “Hello, John Doe!”.

Variable-length Arguments

Sometimes you may not know how many arguments a function needs to accept. In Python, you can use the *args syntax to pass a variable number of arguments to a function. Here’s an example:

def sum(*args):
    result = 0
    for num in args:
        result += num
    return result

result = sum(1, 2, 3, 4, 5)
print(result)   # outputs "15"

In this example, we define a function that can take any number of arguments using *args syntax. The function simply sums all of the numbers passed to it.

Conclusion

In this article, we’ve explored the different ways to pass arguments in Python, including positional arguments, keyword arguments, default arguments, and variable-length arguments. By following the examples and guidelines provided, you should have a solid understanding of how to pass arguments in Python. Remember to experiment and explore the various features of Python arguments, and you’ll be well on your way to becoming a proficient Python programmer. Happy coding!