当前位置: 首页 > news >正文

织梦网站入侵网站备案流程

织梦网站入侵,网站备案流程,cakephp网站开发框架,wordpress 添加php文件近日,公司的财务小姐姐请我吃饭,当时我就有预感,绝对不是就吃一顿饭那么简单。果然,在吃饭的时候,她羞涩的把脑袋凑过来悄悄跟我说,听说你Python很厉害呀。因为平时埋头写代码,很少跟女生讲话。…

近日,公司的财务小姐姐请我吃饭,当时我就有预感,绝对不是就吃一顿饭那么简单。果然,在吃饭的时候,她羞涩的把脑袋凑过来悄悄跟我说,听说你Python很厉害呀。因为平时埋头写代码,很少跟女生讲话。今天小姐姐居然一开口就问我最擅长的技能,那我肯定要好好表现一番啊,于是拍着胸脯说:“是的,我用Python上能控制火箭,下能操作坦克,你想做什么?”。她立马一副崇拜的样子看着我说:“我每个月都要用Excel做工资表,但是每个月都要做一遍,你能不能用Python帮我写一个程序,能够自动完成这个工作。”。我当然立马答应了啊,这么点小事,分分钟搞定!

bc377fa1517d0401070d749a1ea8b52b.png

需求:

在讲实现过程之前,先来给大家说说,这位财务小姐姐的需求是什么。首先他是有一个员工工资表,这个工资表是长这样的: 57c59d30f81eeb5d1986ef579bcd25ee.png

大家给自己工资条签过字的小伙伴都知道,我们需要的工资条上面都有一行标题,所以她的需求是要把工资条这样的: e325b0879fc0362675f5f533eedcb82b.png

之前她处理的方式就是一个个拷贝添加,效率实在太低。今天我给这位小姐姐做个程序,以后做工资条,一秒钟搞定!!!

12f6dcfb01ce052c612f746fc43eefeb.png

实现逻辑分析:

Python中操作Excel的包有很多,比如有pandasopenpyxlxlrd/xlwt等。在这里我们选择的是openpyxl,主要是他除了能处理数据外还能处理样式,功能比较完整。

首先加载excel文件,并且创建一个新的sheet来保存新生成的工资条样式。代码如下:

wb = openpyxl.load_workbook('工资条.xlsx')
wb.copy_worksheet(wb['工资表'])
ws = wb.worksheets[-1]
ws.title = 'final_工资表'

然后再把标题部分的样式(对齐样式、边框样式、填充样式、字体样式等)拷贝一份,以后每次新增一个工资条的时候,都把标题名称和这些样式拷贝过去。这部分实现的代码如下:

def cell_style(cell):
alignment = copy(cell.alignment) # 对齐样式
border = copy(cell.border) # 边框样式
fill = copy(cell.fill) # 填充样式
font = copy(cell.font) # 字体样式
return alignment, border, fill, font

# 获取标题
header = [cell.value for cell in cells_rows[0]]

# 获取标题行中,每个单元格中的各种样式
alignment, border, fill, font = cell_style(cell=cells_rows[0][0])

上面代码是先定义了一个拷贝样式的函数,然后下面把样式拷贝出来。

最后一部分,就是把原始的工资数据读取出来,然后按照工资条的样式重新插入数据。逻辑有点多,建议理解一下:

# 获取每一列的值,拼接在一个列表中
cells_rows = [[cell for cell in row] for row in ws.rows]

for i, _ in enumerate(cells_rows[1:]):
if i > 0:
index = i*3
# 每读取一行,就在下方插入两行
ws.insert_rows(idx=index, amount=2)
# 写表头
for j, v in enumerate(header):
r, c = index+1, j+1
cell = ws.cell(row=r, column=c)
cell.value = v
cell.alignment = alignment
cell.font = font
cell.border = border
cell.fill = fill
# 更新后面的公式
if cell.coordinate[:1] in ('H', 'J'):
cell = ws.cell(row=r+1, column=c)
cell.value = re.sub('\d+', str(r+1), cell.value)

这里需要特别说明一点的就是更新公式。就拿第一次循环来说,我们在第3行的位置,插入了2个空白行。那么原本第3行的数据,此时就被挤到了第5行。

但是需要注意的是,它是被迫挤到第5行的,所以这一整行是原封不动搬到第5行的,包括它原来的公式。原来在第3行的时候,如果公式是SUM(E3:G3),被挤到到了第5行后,应该是SUM(E5:G5),但是它仍然是SUM(E3:G3),所以需要我们修改,上述代码中正是使用正则将这个数字3改为了5。

这样,我们就能把积累在一起的工资数据分割成一个个的工资条了。以后只要把需要处理的工资条,放到代码中,然后运行一下,瞬间就能生成想要的工资条样式了。

本文完整的撩妹代码,大家可以

关注我,发送关键字:工资条,即可领取完整源代码哦~ 

财务小姐姐再也不用加班啦,不加班去干嘛呢?啥都能干呀,哈哈哈哈~~

Python还能在办公中哪些方面帮助我们呢,评论区聊聊呗~~

http://www.lbrq.cn/news/2616463.html

相关文章:

  • 有哪些能做专门接做标书的网站如何找做网站的公司
  • 携程旅行的网站建设合肥网站建设
  • 昆明企业网站建设重庆可靠的关键词优化研发
  • 专业佛山网站建设seo教程下载
  • 网站后台如何开发青岛网站推广系统
  • 铜梁网站建设合肥seo推广排名
  • 信息爆炸的时代做网站seo关键词怎么选择
  • 如何购买一个网站的域名搜索引擎营销的特点包括
  • 芜湖 网站建设市场策划方案
  • wordpress内容清空南宁关键词优化公司
  • 网站开发 评价百度seo指数查询
  • 如何做网站模特seo外链平台
  • 企业名录黄页大全seo教育培训机构
  • 如何做网站充值接口免费推广的方式
  • 电商设计网站百度咨询
  • 随州市住房和城乡建设委员会网站百度教育官网
  • 公司网站维护价格表2023公众号软文推广
  • 泉州建设工程开标网站电商网站建设哪家好
  • 前程无忧招聘网站标记怎么做网络推广的工作好做吗
  • 做网站显示不同字体企业建站 平台
  • 网站建设与设计试题关键词全网搜索
  • 使用 ahrefs 进行 seo 分析自动优化句子的软件
  • 简单的房源展示网站开发辽源seo
  • 贵阳建筑公司网站建设百度网盘在线登录入口
  • 做一个推广网站多少钱bt磁力链好用的引擎
  • 中山英文网站建设谷歌chrome
  • 佛山市制作网站武汉企业网站推广
  • 最牛网站设计公司百度推广代理公司广州
  • 怎么样做网站代理商厦门seo外包
  • 做app和网站公关公司的主要业务
  • Linux---第二天---基础指令
  • 93、【OS】【Nuttx】【构建】cmake menuconfig 目标
  • 【关于Java的泛型(基础)】
  • 暑期算法训练.14
  • 【学习笔记】Manipulate-Anything(基于视觉-语言模型的机器人自动化操控系统)
  • MLIR Introduction