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

如何在pandas的assign函数中使用带方括号的列名?

解决pandas.assign添加含特殊字符列名的问题

你可以通过两种方式在一行代码里实现添加"Weight [kg]"列:

方式1:字典解包传入参数

利用Python的字典解包语法**,把包含特殊字符列名的字典转换成assign可识别的参数:

DataFrame1 = DataFrame1.assign(**{"Weight [kg]": [1,2,3,4]})

这种方法不受Python标识符规则限制,能支持任意合法字符串作为列名。

方式2:直接传入字典(pandas 1.3.0+适用)

从pandas 1.3.0版本开始,assign支持直接接收字典作为参数,无需解包:

DataFrame1 = DataFrame1.assign({"Weight [kg]": [1,2,3,4]})

原写法失效原因

你之前用DataFrame1.assign(NewColName=[1,2,3,4])是利用Python关键字参数,但Python的标识符(关键字参数名)不允许包含空格、方括号这类特殊字符,因此直接写"Weight [kg]"作为参数名会触发语法错误。而字典的键可以是任意合法字符串,刚好避开这个限制。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.16 00:40:59