import pandas as pd
import json

# 读取Excel文件
df = pd.read_excel('e:/project/python/工具/智慧校园/本部/消费数据/2024学生.xlsx')

print("=== Excel文件基本信息 ===")
print(f"数据形状: {df.shape}")
print(f"\n列名: {df.columns.tolist()}")

print("\n=== 前10行数据 ===")
print(df.head(10))

print("\n=== 数据类型 ===")
print(df.dtypes)

# 提取唯一值
print("\n=== 唯一值统计 ===")
for col in df.columns:
    unique_count = df[col].nunique()
    print(f"{col}: {unique_count} 个唯一值")
    if unique_count <= 20:
        print(f"  值: {df[col].unique().tolist()}")

# 检查是否有年级和班级相关字段
grade_class_cols = [col for col in df.columns if any(keyword in col.lower() for keyword in ['年级', '班级', 'grade', 'class'])]
print(f"\n=== 年级/班级相关字段: {grade_class_cols} ===")

# 保存列名信息供后续使用
with open('e:/project/python/工具/智慧校园/本部/消费数据/excel_info.json', 'w', encoding='utf-8') as f:
    info = {
        'columns': df.columns.tolist(),
        'shape': df.shape,
        'sample_data': df.head(5).to_dict('records')
    }
    json.dump(info, f, ensure_ascii=False, indent=2)

print("\n=== 信息已保存到 excel_info.json ===")