Excel 表格样式workbook.xlsx
    image.png

    1.读取Excel

    1. import pandas as pd
    2. from _datetime import date, timedelta
    3. def add_month(d, md):
    4. """
    5. 月份增加函数
    6. :param d: 传入的时间
    7. :param md: 增加的月份
    8. :return:
    9. """
    10. yd = md // 12
    11. m = d.month + md % 12
    12. if m != 12:
    13. yd += m // 12
    14. m = m % 12
    15. return date(d.year + yd, m, d.day)
    16. # index_col=None,先不指定index,以便后面操作
    17. workbook = pd.read_excel('./workbook.xlsx', skiprows=4, usecols='D:G', index_col=None,
    18. dtype={'ID': str, 'instore': str, 'Date': str})
    19. """
    20. workbook['ID'].at[0] = 1 # 默认情况数据类型是float,指定1 的时候显示 1.0
    21. NaN 是指 not number,默认float,可以在打开Excel时候指定 dtype={'ID':str},这时候指定的ID 就没有小数点了
    22. """
    23. start = date(2018, 1, 1)
    24. for i in workbook.index:
    25. # workbook['ID'].at[i] = i + 1 # 与下面的代码等效,这个是先找到"ID" 这个 Series ,在改行里面的值
    26. workbook.at[i, 'ID'] = i + 1 # 与上面的代码等效,这个是DateFrame 直接调用
    27. workbook['instore'].at[i] = 'Yes' if i % 2 == 0 else 'No'
    28. workbook['Date'].at[i] = add_month(start, i)
    29. print(workbook)
    30. # 操作完再设定index值
    31. workbook.set_index('ID', inplace=True)
    32. workbook.to_excel('./1.xlsx')

    生产excel

    image.png