*args and **kwargs
Variable-length arguments
Interview Relevant: Very common in interviews
*args and **kwargs
Accept variable number of arguments.
Code Examples
Variable-length arguments.
python
1# *args - variable positional arguments
2def sum_all(*args):
3 return sum(args)
4sum_all(1, 2, 3, 4) # 10
5
6# **kwargs - variable keyword arguments
7def print_info(**kwargs):
8 for key, value in kwargs.items():
9 print(f"{key}: {value}")
10print_info(name="Alice", age=25)
11
12# Combine all types
13def func(a, b, *args, **kwargs):
14 print(a, b) # Required
15 print(args) # Extra positional
16 print(kwargs) # Extra keyword
17
18# Unpack into function call
19args = [1, 2, 3]
20kwargs = {"a": 1, "b": 2}
21func(*args) # Unpack list
22func(**kwargs) # Unpack dict