You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中*号的非乘法用法:解析.format()参数中的*作用

Python中.format()参数前*号的作用解析

在你给出的代码里,format()方法参数前的*是Python的可迭代对象解包操作符,核心作用就是把列表、元组这类可迭代对象里的元素,拆成独立的位置参数传递给方法。

举代码里的例子具体说明:

  • 对于format_row.format("", *dota_teams):
    dota_teams是一个包含4个元素的列表,*dota_teams会把这个列表直接拆成4个单独的参数,等价于手动写format_row.format("", "Liquid", "Virtus.pro", "PSG.LGD", "Team Secret")。这刚好匹配format_row里的5个格式化占位符(因为len(dota_teams)+1=5),实现表头的对齐输出。
  • 循环里的format_row.format(team, *row)同理:
    每个row是data里的子列表(比如第一个row是[1,2,1,'x']),*row会把它拆成4个独立参数,加上前面的team参数,刚好填满format_row的5个占位符,实现每一行队伍数据的对齐输出。

这种用法不止局限于format()方法,Python里任何函数/方法都可以用*来解包可迭代对象作为位置参数,能避免手动逐个列举元素的繁琐,让代码更简洁灵活。

内容的提问来源于stack exchange,提问作者Armagedox

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 23:01:34