要获取DataFrame的列名,直接用.columns属性就行,它会返回一个Index对象,你可以轻松地把它转成列表。
import pandas as pd
# 创建一个示例DataFrame
df = pd.DataFrame({
'A': [1, 2, 3],
'B': [4, 5, 6],
'C': [7, 8, 9]
})
# 方法1: 获取列名,返回一个pandas Index对象
column_index = df.columns
print("列名 (Index对象):", column_index)
print("类型:", type(column_index))
# 方法2: 转换为列表,这是最常用的方式
column_list = df.columns.tolist()
print("\n列名 (列表):", column_list)
print("类型:", type(column_list))
# 方法3: 直接通过list()转换
column_list_2 = list(df.columns)
print("\n列名 (通过list转换):", column_list_2)
# 你也可以遍历列名
print("\n遍历列名:")
for col in df.columns:
print(f"列: {col}")
# 检查某个列名是否存在
if 'B' in df.columns:
print("\n'B' 列存在于DataFrame中")
核心就两点:
df.columns 拿到的是Index对象,适用于pandas自己的操作。
df.columns.tolist() 或 list(df.columns) 拿到的是Python列表,用起来更通用。
想用列名的话,转成列表最省事。