w3resource

Explain the difference between positional and keyword arguments in a function

Differentiating Positional and Keyword Arguments in Python Functions

In a function, positional arguments and keyword arguments differ in how they are passed and matched to parameters.

Positional arguments:

  • Positional arguments are the most common arguments used in functions.
  • When you call a function with positional arguments, the values are passed to the function in the same order as the parameters are defined in the function's parameter list.
  • The position of each argument determines which parameter it corresponds to.
  • If the function has multiple parameters, you need to provide arguments for all parameters in order.
  • The positional arguments are identified based on their position, and their values are matched from left to right with the parameters of the function.

Example: Using positional arguments

Code:

def message(name, greeting):
    return f"{greeting}, {name}!"
result = message("Zeynab", "Hello")
print(result)  # Output: Hello, Zeynab!

Output:

Hello, Zeynab!

Keyword arguments:

  • Keyword arguments allow you to specify the parameter name and its corresponding value when calling the function.
  • Rather than relying on the position of the arguments, you explicitly name each parameter followed by its value.
  • Providing arguments in any order makes the function call more explicit and readable.
  • Keyword arguments are helpful when you have functions with multiple parameters, and you want to know which value is assigned to each parameter.

Code:

def message(name, greeting):
    return f"{greeting}, {name}!"
result = message(greeting="Hi", name="Zeynab")
print(result)  # Output: Hi, Zeynab!

Output:

Hi, Zeynab!


Follow us on Facebook and Twitter for latest update.