40 lines
1.4 KiB
Python
40 lines
1.4 KiB
Python
import pandas as pd
|
|
from sympy import false
|
|
filePath = r"C:\Users\Administrator.DESKTOP-7IC2USJ\Desktop\接车宝数据17320816664.xlsx"
|
|
xls = pd.ExcelFile(filePath)
|
|
sheet_names = xls.sheet_names
|
|
print(sheet_names)
|
|
sheets = xls.sheet_names # 获取sheet名字
|
|
|
|
sheet_name = input("输入sheet:")
|
|
# 假设您的数据在一个名为'data.csv'的CSV文件中
|
|
df = pd.read_excel(filePath,sheet_name=sheet_name)
|
|
|
|
first_row1 = df.columns.tolist() # 获取表头
|
|
print(first_row1)
|
|
# 获取用户输入的切割字符
|
|
delimiter_input = input("请输入您要使用的切割字符: ")
|
|
id_input = input("请输入主键字段: ")
|
|
a_input = input("请输入项目a: ")
|
|
b_input = input("请输入项目b: ")
|
|
|
|
# 创建空DataFrame用于存放拆分后的数据
|
|
split_df = pd.DataFrame()
|
|
|
|
# 对于每一行,根据用户的输入切割项目和价格
|
|
for index, row in df.iterrows():
|
|
projects = row[a_input].split(delimiter_input) # 使用用户输入的字符切割项目
|
|
prices = row[b_input].split(delimiter_input) # 使用用户输入的字符切割价格
|
|
|
|
# 创建临时DataFrame并将新数据追加到split_df
|
|
temp_df = pd.DataFrame({
|
|
id_input: [row['id']] * len(projects),
|
|
a_input: projects,
|
|
b_input: prices
|
|
})
|
|
split_df = pd.concat([split_df, temp_df], ignore_index=True)
|
|
|
|
# 显示拆分后的数据
|
|
print(split_df)
|
|
|
|
split_df.to_excel('拆分.xlsx',index=false) |