如何在表格两列下新增另一个表头?现有代码运行报InvalidSyntax错误
语法错误原因
你定义的Python字典不符合语法规范:Python字典要求所有元素均为键: 值格式的键值对,你直接在字典里插入了一个没有对应键的嵌套字典{'Country':country, 'Nation':season},且嵌套字典后没有加逗号分隔后续元素,因此触发InvalidSyntax报错。
修正方案
根据你的需求分两种场景处理:
- 如果你只是想用字典存储分组的表头对应数据,给嵌套的分组指定一个键即可,正确写法如下:
table = { 'Color': color, 'Continent': continent, # 给两个列的分组指定一个父级键,可按需修改命名 'region_info': { 'Country': country, 'Nation': season }, 'Name': name, 'Surname': surname }
- 如果你是要生成带嵌套多级表头的表格,推荐用pandas的MultiIndex实现,示例代码如下:
import pandas as pd # 定义多级表头,第一个元素为父表头,第二个为子表头 columns = pd.MultiIndex.from_tuples([ ('base', 'Color'), ('base', 'Continent'), ('region', 'Country'), ('region', 'Nation'), ('user', 'Name'), ('user', 'Surname') ]) # 传入你自己的行数据生成带多级表头的表格 df = pd.DataFrame(your_data, columns=columns)
额外提示
你代码里'Nation': season的字段和赋值变量语义不匹配,Nation对应国家,赋值的是season(季节)变量,大概率是逻辑写错了,建议检查修正。
内容的提问来源于stack exchange,提问作者luka
相关产品推荐
相关产品推荐

