Python中星号 * 的用法

1、问题

看到一个问题如下图:

这个怎么选择呢?

2、知识点解答

在 Python 3 中,星号 * 的用法被引入为一种扩展语法,用于解构赋值(unpacking)和函数参数传递中的特定情况。

主要有两种情况可以使用星号 *

1、扩展解构赋值(Extended iterable unpacking) : 在解构赋值中,星号 * 可以用来捕获序列中剩余的元素,形成一个列表。

python 复制代码
# 根据题目,执行代码

a, b, *c, d = [1,2,3,4,5,6,7]
print(c)   

# 输出结果为:[3, 4, 5, 6]

2、可变长度参数(Arbitrary argument lists) : 在函数定义中,星号 * 可以用来表示可变长度的参数列表,即不定数量的参数。这种语法允许函数接受任意多个位置参数,它们会被收集到一个元组中。例如:

python 复制代码
def sum_values(*args):
    total = 0
    for num in args:
        total += num
    return total

print(sum_values(1, 2, 3))  

# 输出结果为 6

在这两种情况下,星号 * 提供了一种灵活的方式来处理不确定数量的元素或参数,增强了 Python 中的语法和功能。

相关推荐
Vodka~2 分钟前
WSL2 + RViz GPU渲染机械臂
人工智能·python
8Qi810 分钟前
hello-agents学习笔记--Memory让Agent拥有记忆
人工智能·python·llm·agent·ai编程·vibecoding
Esaka_Forever38 分钟前
Python 完整内存管理机制详解
开发语言·python·spring
Weigang1 小时前
用 LlamaIndex 做 RAG 前,先把 Reader、Index、Retriever 的边界写清楚
人工智能·python·开源
小九九的爸爸1 小时前
前端入门Agent开发,掌握这些Python数据基础就够啦
python·agent
风之所往_1 小时前
Python 3.9 新特性全面总结
python
W是笔名1 小时前
python___容器类型的数据___序列
开发语言·python
aqi002 小时前
15天学会AI应用开发(十一)从TXT文件构建RAG知识库
人工智能·python·大模型·ai编程·ai应用
火星校尉2 小时前
一场数据基建与消费场景的跨界实验
java·前端·数据库·python·php