Python Function Basics: Creation, Parameters, and Usage
This tutorial explains how to define and call Python functions, covering various parameter types—including positional, default, *args, and **kwargs—demonstrates return values, the pass statement, and provides a comprehensive example that combines all these concepts.
1. Creating a Function and Calling It
Define a simple function using def and call it to produce output.
def greet(name):
print(f"Hello, {name}!")
greet("Alice") # Output: Hello, Alice!2. Parameters
Functions can accept one or more parameters, which are specified in the definition and supplied when calling the function.
def add(a, b):
return a + b
result = add(3, 5)
print(result) # Output: 83. Parameter Count
Functions may have a fixed number of parameters or support variable numbers.
def multiply(x, y):
return x * y
result = multiply(4, 5)
print(result) # Output: 204. Arbitrary Positional Arguments (*args)
*args collects any number of positional arguments into a tuple.
def sum_all(*args):
total = 0
for num in args:
total += num
return total
result = sum_all(1, 2, 3, 4, 5)
print(result) # Output: 155. Keyword Arguments
Keyword arguments let you pass values using name=value pairs.
def greet(name, greeting="Hello"):
print(f"{greeting}, {name}!")
greet(name="Alice", greeting="Hi") # Output: Hi, Alice!
greet(name="Bob") # Output: Hello, Bob!6. Arbitrary Keyword Arguments (**kwargs)
**kwargs gathers any number of keyword arguments into a dictionary.
def print_info(**kwargs):
for key, value in kwargs.items():
print(f"{key}: {value}")
print_info(name="Alice", age=30, city="New York")
# Output:
# name: Alice
# age: 30
# city: New York7. Default Parameter Values
You can assign default values to parameters; they are used when the argument is omitted.
def describe_pet(pet_name, animal_type="dog"):
print(f"I have a {animal_type} named {pet_name}.")
describe_pet("Willie") # Output: I have a dog named Willie.
describe_pet("Harry", "hamster") # Output: I have a hamster named Harry.8. Passing a List as an Argument
A list can be passed to a function and iterated over.
def print_items(items):
for item in items:
print(item)
fruits = ["apple", "banana", "cherry"]
print_items(fruits)
# Output:
# apple
# banana
# cherry9. Return Values
Functions can return one or multiple values using the return statement.
def get_person_info(name, age):
return f"Name: {name}", f"Age: {age}"
person_info = get_person_info("Alice", 30)
print(person_info) # Output: ('Name: Alice', 'Age: 30')
name, age = get_person_info("Alice", 30)
print(name) # Output: Name: Alice
print(age) # Output: Age: 3010. The pass Statement
pass acts as a placeholder where a statement is syntactically required but no action is needed.
def my_function():
pass # Placeholder for future code
my_function() # Does nothing11. Comprehensive Example
This example combines required arguments, *args , and **kwargs to demonstrate their joint usage.
def process_data(required_arg, *args, **kwargs):
print(f"Required argument: {required_arg}")
if args:
print("Additional arguments:")
for arg in args:
print(arg)
if kwargs:
print("Keyword arguments:")
for key, value in kwargs.items():
print(f"{key}: {value}")
process_data("必需的参数", 1, 2, 3, name="Alice", age=30)
# Output:
# Required argument: 必需的参数
# Additional arguments:
# 1
# 2
# 3
# Keyword arguments:
# name: Alice
# age: 30Test Development Learning Exchange
Test Development Learning Exchange
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.