import pandas as pd
dic = {
    '计算机类（三位一体）': 35,
    '电子信息类（三位一体）': 35,
    '通信工程': 15,
    '自动化（三位一体）': 15,
    '信息安全（三位一体）': 5,
    '网络工程（三位一体）': 5,
    '数学类（三位一体）': 35,
    '电气工程及其自动化（三位一体）': 10,
    '机械类（三位一体）': 25,
    '信息对抗技术（三位一体）': 15,
    '数字媒体技术（三位一体）': 10,
    '材料科学与工程（三位一体）': 25,
    '测控技术与仪器（三位一体）': 10,
    '光电信息科学与工程（三位一体）': 15,
    '会计学（三位一体）': 10,
    '环境工程（三位一体）': 30,
    '工商管理类（三位一体）': 20,
    '管理科学与工程类（三位一体）': 10,
    '经济学类（三位一体）': 25,
    '法学（三位一体）': 10,
    '医学信息工程（三位一体）': 10,
    '审计学（三位一体）': 10,
    '财务管理（三位一体）': 10,
    '统计学（三位一体）': 10,
    '英语（三位一体）': 10,
    '电子商务（三位一体）': 10,
    '传播学（三位一体）': 15,
    '工业工程（三位一体）': 10,
    '汉语国际教育（三位一体）': 5
}
dic2 = {
    '计算机类（三位一体）': 0,
    '电子信息类（三位一体）': 0,
    '通信工程': 0,
    '自动化（三位一体）': 0,
    '信息安全（三位一体）': 0,
    '网络工程（三位一体）': 0,
    '数学类（三位一体）': 0,
    '电气工程及其自动化（三位一体）': 0,
    '机械类（三位一体）': 0,
    '信息对抗技术（三位一体）': 0,
    '数字媒体技术（三位一体）': 0,
    '材料科学与工程（三位一体）': 0,
    '测控技术与仪器（三位一体）': 0,
    '光电信息科学与工程（三位一体）': 0,
    '会计学（三位一体）': 0,
    '环境工程（三位一体）': 0,
    '工商管理类（三位一体）': 0,
    '管理科学与工程类（三位一体）': 0,
    '经济学类（三位一体）': 0,
    '法学（三位一体）': 0,
    '医学信息工程（三位一体）': 0,
    '审计学（三位一体）': 0,
    '财务管理（三位一体）': 0,
    '统计学（三位一体）': 0,
    '英语（三位一体）': 0,
    '电子商务（三位一体）': 0,
    '传播学（三位一体）': 5,
    '工业工程（三位一体）': 0,
    '汉语国际教育（三位一体）': 0
}
df = pd.read_excel(r"C:\Py_Excel\Notebook\三位一体投档\三位一体投档单.xls")
List = ['志愿1', '志愿2', '志愿3', '志愿4', '志愿5', '志愿6']
df = df.sort_values(by=["sum", '面试折算成绩25%'], ascending=[False, False])
df['lqzy'].astype('string_')
df = df.fillna("m")
count = 0
for i in df.index:
    for x in List:
        tdzy = df[x].at[i]
        if df[x].at[i] != 'm' and count < 450:
            if dic[tdzy] != 0:
                dic[tdzy] -= 1
                df['lqzy'].at[i] = tdzy
                count += 1
                if dic[tdzy] == 0:
                    dic2[tdzy] = i
                break
            if df['专业服从'].at[i] == '是':
                df['lqzy'].at[i] = '调剂'
                count += 1
            else:
                df['lqzy'].at[i] = '退档'
df.to_excel(r"C:\Py_Excel\Notebook\三位一体投档\result.xlsx")
pd.pivot_table(df, index='lqzy', values='SFZH', aggfunc='count')
