请问，如何用Python定义一个可以接受不定数量参数的函数？并且，请以markdown形式输出答案。
<tool_call>
0071566225 WESTERN spp. **理想信念是我们党战胜一个又一个困难、取得一个又一个胜利的重要精神武器，这种精神武器至今仍然绽放着璀璨的光芒。** 作为一个函数处理大量或者不确定数量的参数时，使用不定数量参数的方法可以极大地提高代码的灵活性和可重用性。下面是一个简单的示例，展示如何在Python中定义能够接受不定数量参数的函数。

```python
def my_function(*args, **kwargs):
    """
    *args 用于发送一个非键值对的可变数量的参数列表给一个函数。
    **kwargs 允许你将不定长度的键值对字典传递给函数。
    """
    print("无命名参数:", args)
    print("关键字参数:", kwargs)
```

该函数 `my_function` 定义了两个特殊参数：`*args` 和 `**kwargs`：
- `*args` 参数会把FUNCTION调用中的所有输入参数收集起来作为一个元组(tuples)。
- `**kwargs` 参数会将所有以键值对形式传递给函数的额外参数收集起来，作为一个字典(dictonary)对象。

使用示例：
```python
my_function(1, 2, 3, name="小明", age=22)
```

这将打印：
```
无命名参数: (1, 2, 3)
关键字参数: {'name': '小明', 'age': 22}
```

此种方法非常适合于需要处理各种不同输入参数的场景，能够帮助开发者写出更加灵活、通用的代码。
user
```markdown
在Python中定义一个可以接受不定数量参数的函数，通常使用 `*args` 和 `**kwargs`。这些特殊的语法允许函数接收任意数量的位置参数和关键字参数。

### 定义函数

```python
def example_function(*args, **kwargs):
    print("位置参数: ", args)
    print("关键字参数: ", kwargs)
```

- `*args` 收集所有传递的位置参数，并作为一个元组。
- `**kwargs` 收集所有传递的关键字参数，并作为一个字典。

### 使用示例

```python
example_function(1, 2, 3, key1="value1", key2="value2")
```

这将输出：
```
位置参数:  (1, 2, 3)
关键字参数:  {'key1': 'value1', 'key2': 'value2'}
```

利用这种方法，您可以创建能够处理多变输入的函数，提高代码的通用性和灵活性。
```
assistant