当前位置: 首页 > news >正文

【自记】 Python 中函数参数前加 *(单星号)的解包可迭代对象写法说明

        在 Python 中,函数参数前加 *(单星号)是一种解包可迭代对象的写法,用于将可迭代对象(如元组、列表等)中的元素逐个传递给函数的参数。

具体说明

  • 当有一个可迭代对象(比如元组 temp = (1, 2, 3)),如果直接把这个可迭代对象传给函数(如 hello(temp)),函数会把整个可迭代对象当作一个参数接收,而不是拆分成多个元素分别对应函数的多个参数。
  • 但如果在可迭代对象前加上 *(即 hello(*temp)),Python 就会把可迭代对象解包,将其中的每个元素依次传递给函数的参数,效果等价于直接把元素逐个写出来传给函数(即 hello(1, 2, 3))。

再举个例子

假设有列表 nums = [10, 20, 30],函数 def func(a, b, c): print(a, b, c)

  • 若执行 func(nums),会报错,因为 func 期望接收 3 个参数,却只收到 1 个列表参数。
  • 若执行 func(*nums),就会把列表解包,等价于 func(10, 20, 30),能正常打印出 10 20 30

        这种写法很方便,当我们有一个可迭代对象,且想把它的元素逐个传给函数的多个参数时,就可以用 * 来解包。

http://www.dtcms.com/a/360191.html

相关文章:

  • OpenCL C 内存对象
  • 第2.5节:中文大模型(文心一言、通义千问、讯飞星火)
  • 在线图片特效工具,600种创意模板
  • Python入门教程:常用第三方库Matplotlib(基本用法)下载、安装、参数解析教程
  • 案例——从零开始搭建 ASP.NET Core 健康检查实例
  • 【MLLM】语音端到端大模型和Voice Agent发展
  • 【Java进阶】Java与SpringBoot线程池深度优化指南
  • GitHub 热榜项目 - 日榜(2025-08-31)
  • 【AI编程工具】使用Cursor快速搭建一套小型项目管理系统
  • mysql5.7.44安装遇到登录权限问题
  • 在Linux环境安装Maven(保姆级别)
  • macos调用chrome后台下载wasm-binaries.tar.xz
  • k8s---prometheus 监控
  • AI大模型实战解析-RAG知识库+LangChain项目实战
  • 《SVA断言系统学习之路》【01】即时断言概览
  • IDM(Internet Download Managerv 6.38)破除解版下载!IDM 下载器永久免费版!提升下载速度达5倍!安装及使用
  • 深入解析Linux系统中的/etc/hosts文件
  • 刷题日记0831
  • 盲孔轴旋转编码器轴设计与加工的几个注意事项
  • 网络爬虫是自动从互联网上采集数据的程序
  • 开源知识抽取框架 推荐
  • Python基础之元组列表集合字典
  • 数据化管理是什么意思?企业该如何进行数据化管理
  • 介绍GSPO:一种革命性的语言模型强化学习算法
  • 【系统分析师】高分论文:论信息系统的安全与保密设计
  • 利用爬虫获取淘宝商品信息,参数解析
  • 大语言模型(LLM)简介与应用分享
  • Linux 系统忘记 root 密码?紧急救援方案与原理详解
  • 【STM32】外部中断(下)
  • kkfile一键部署-ubuntu版