1、主文件 work_log.py
输入日志内容,检查是否输错,调用t.py。
day = input('请输入记录日志日期(例如20240808):')
work = input('请输入当前日期工作内容:')
times_range = input('请输入工作时长:')
if_overtime = input('请输入是否加班:')
jiancha = input('输入正确请按y,否则请按n:')
while jiancha =='n':
day = input('请输入记录日志日期:')
work = input('请输入当前日期工作内容:')
times_range = input('请输入工作时长:')
if_overtime = input('请输入是否加班:')
jiancha = input('输入正确请按y,否则请按n:')
import t
t.t_1(day,work,times_range,if_overtime)
2、副文件 t.py
根据主文件输入的日期,判断是星期几,并生成weekday属性。
def t_1(day,work,times_range,if_overtime):
from datetime import datetime
def get_weekday():
# print(day)
date = datetime.strptime(day, "%Y%m%d")
weekday = date.weekday()
return weekday
weekday = get_weekday()
if weekday == 0:
weekday = '星期一'
elif weekday == 1:
weekday = '星期二'
elif weekday == 2:
weekday ='星期三'
elif weekday == 3:
weekday = '星期四'
elif weekday == 4:
weekday ='星期五'
elif weekday == 5:
weekday ='星期六'
else:
weekday = '星期日'
data = {
f'{day[4:6]}月份':[day,times_range,work,weekday,if_overtime]
}
demo = Demo()
demo.SaveExcels(data,'驻场工作日志','驻场日志',('日期','时长','工作内容','星期','是否加班'))
3、ExcelDemo excel模版程序
借用别人编写的,生成excel文件
'''
通过调用这个文件中的方法,可以直接操作excel
'''
import os, xlwt, xlrd
from xlutils.copy import copy
class Demo:
# 单表数据存储
@staticmethod
def SaveExcel(data, folder, sheet, sheet1_headers):
'''
:param data: 字典:{子表名:[数据值]}
:param folder: 文件夹路径
:param sheet: excel文件名(工作簿)
:param sheet1_headers: 表头 元组类型
:return:
'''
# 获取当前路径
os_mkdir_path = os.getcwd() + f'/{folder}/'
# 判断这个路径是否存在,不存在就创建
if not os.path.exists(os_mkdir_path):
os.mkdir(os_mkdir_path) # 创建一个名为数据的文件夹
# 判断excel表格是否存在 工作簿文件名称
os_excel_path = os_mkdir_path + f'{sheet}.xls'
if not os.path.exists(os_excel_path):
# 不存在,创建工作簿(也就是创建excel表格)
workbook = xlwt.Workbook(encoding='utf-8')
"""工作簿中创建新的sheet表""" # 设置表名
for i in data.keys():
key = i
worksheet1 = workbook.add_sheet(key, cell_overwrite_ok=True) # data 是要创建的表名
# 这个表名必须要和data字典中的key一致
"""设置sheet表的表头"""
# sheet1_headers = ('评论内容', '评论时间', '点赞数量', '用户名')
# 将表头写入工作簿
for header_num in range(0, len(sheet1_headers)):
# 设置表格长度
worksheet1.col(header_num).width = 2560 * 3
# 写入 行, 列, 内容
worksheet1.write(0, header_num, sheet1_headers[header_num])
# 循环结束,代表表头写入完成,保存工作簿
workbook.save(os_excel_path)
# 判断工作簿是否存在
if os.path.exists(os_excel_path):
# 打开工作簿
workbook = xlrd.open_workbook(os_excel_path)
# 获取工作薄中所有表的个数
sheets = workbook.sheet_names()
for i in range(len(sheets)):
for name in data.keys():
worksheet = workbook.sheet_by_name(sheets[i])
# 获取工作薄中所有表中的表名与数据名对比
if worksheet.name == name:
# 获取表中已存在的行数
rows_old = worksheet.nrows
# 将xlrd对象拷贝转化为xlwt对象
new_workbook = copy(workbook)
# 获取转化后的工作薄中的第i张表
new_worksheet = new_workbook.get_sheet(i)
for num in range(0, len(data[name])):
new_worksheet.write(rows_old, num, data[name][num])
new_workbook.save(os_excel_path)
# 多表数据存储
@staticmethod
def SaveExcels(data, folder, sheet, sheet1_headers):
'''
:param data: 字典{sheet名:[数据值]}
:param folder: 文件夹名字
:param sheet: excel文件名(工作簿)
:param sheet1_headers: 表头 元组类型
:return:
'''
# 获取表的名称
sheet_name = [i for i in data.keys()][0]
# 创建保存excel表格的文件夹
# os.getcwd() 获取当前文件路径
os_mkdir_path = os.getcwd() + f'/{folder}/'
# 判断这个路径是否存在,不存在就创建
if not os.path.exists(os_mkdir_path):
os.mkdir(os_mkdir_path)
# 判断excel表格是否存在 工作簿文件名称
os_excel_path = os_mkdir_path + f'{sheet}.xls'
if not os.path.exists(os_excel_path):
# 不存在,创建工作簿(也就是创建excel表格)
workbook = xlwt.Workbook(encoding='utf-8')
"""工作簿中创建新的sheet表""" # 设置表名
worksheet1 = workbook.add_sheet(sheet_name, cell_overwrite_ok=True)
"""设置sheet表的表头"""
# sheet1_headers = ('评论内容', '评论时间', '点赞数', '用户名')
# 将表头写入工作簿
for header_num in range(0, len(sheet1_headers)):
# 设置表格长度
worksheet1.col(header_num).width = 2560 * 3
# 写入表头 行, 列, 内容
worksheet1.write(0, header_num, sheet1_headers[header_num])
# 循环结束,代表表头写入完成,保存工作簿
workbook.save(os_excel_path)
"""=============================已有工作簿添加新表==============================================="""
# 打开工作薄
workbook = xlrd.open_workbook(os_excel_path)
# 获取工作薄中所有表的名称
sheets_list = workbook.sheet_names()
# 如果表名称:字典的key值不在工作簿的表名列表中
if sheet_name not in sheets_list:
# 复制先有工作簿对象
work = copy(workbook)
# 通过复制过来的工作簿对象,创建新表 -- 保留原有表结构
**自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。**
**深知大多数Python工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!**
**因此收集整理了一份《2024年Python开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。**
![img](https://img-blog.csdnimg.cn/img_convert/be64960cbabe0e2bf9af7d69acc55cc4.png)
![img](https://img-blog.csdnimg.cn/img_convert/479e63a092153b6d95e263afa78cab18.png)
![img](https://img-blog.csdnimg.cn/img_convert/121124f35a9a64f62a39bf5207c9787a.png)
![img](https://img-blog.csdnimg.cn/img_convert/9ad868918acf74bc4ac54da98e52762f.png)
![img](https://img-blog.csdnimg.cn/img_convert/6c361282296f86381401c05e862fe4e9.png)
![img](https://img-blog.csdnimg.cn/img_convert/9f49b566129f47b8a67243c1008edf79.png)
**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!**
**由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新**
**如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注:Python)**
f79.png)
**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!**
**由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新**
**如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注:Python)**
![](https://img-blog.csdnimg.cn/img_convert/cbddec66db043389c89c820b36a47336.jpeg)