久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁技術文章
文章詳情頁

Python還能這么玩之只用30行代碼從excel提取個人值班表

瀏覽:96日期:2022-06-14 16:18:14
目錄一、查找操作二、安裝 openpyxl 模塊三、讀取并篩選值班表中自己的信息四、創建自己的值班信息表五、全部代碼六、執行結果七、總結一、查找操作

1.Excel 模塊 xlrd,xlwt,xlutils 分別負責 Excel 文件的讀、寫、讀寫轉換工作!

2.openpyxl 直接可以對 Excel 文件讀寫!

3.pandas 直接可以對 Excel 文件讀寫!

二、安裝 openpyxl 模塊

pip install openpyxl三、讀取并篩選值班表中自己的信息

1.讀取所有的值班信息;

2.由于一般情況 excel 都會有部分表格為空,保存全部 None 的 excel 行字符串數據;

3.循環全部的值班數據,將當前行數據形成一個數據字符串;

4.判斷當前值班信息字符串是否含有自己的姓名;

5.對含有自己信息的數據中關鍵信息(值班時間,姓名)進行存儲;

6.然后判斷當前字符串是否含有全部 None 的數據;

7.由于值班表沒有空出的行,所以查到 None,直接跳出循環。

dutys = [] book = openpyxl.load_workbook(’duty.xlsx’,data_only=True) sheet = book.active all_data = book.get_sheet_by_name('日常加班') none_str = ’’.join([str(None).ljust(20) for c in range(1,all_data.max_column+1)]) for r in range(1,all_data.max_row + 1): cur_str = ’’.join([str(all_data.cell(row=r,column=c).value).ljust(20) for c in range(1,all_data.max_column+1)]) if cur_str.find('***') >= 0: dutys.append({'date': all_data.cell(row=r,column=2).value,'name': all_data.cell(row=r,column=3).value }) elif cur_str.find(none_str) >= 0: break return dutys四、創建自己的值班信息表

1.創建一個值班信息表的 excel;

2.將自己的值班信息循環;

3.將信息填入創建的表格。

book = openpyxl.Workbook() sheet = book.active for i in range(len(dutys)): sheet.cell(row=1 + i, column=1).value = dutys[i].get('name') sheet.cell(row=1 + i, column=2).value = f’{dutys[i].get('date')}’ book.save(’my_duty.xlsx’)五、全部代碼

#!/usr/bin/env python'''@Author :Rattenking@Date :2021/06/02 10:19@CSDN :https://blog.csdn.net/m0_38082783'''import openpyxlimport timedef get_my_duty_date(): dutys = [] book = openpyxl.load_workbook(’duty.xlsx’,data_only=True) sheet = book.active all_data = book.get_sheet_by_name('日常加班') none_str = ’’.join([str(None).ljust(20) for c in range(1,all_data.max_column+1)]) for r in range(1,all_data.max_row + 1): cur_str = ’’.join([str(all_data.cell(row=r,column=c).value).ljust(20) for c in range(1,all_data.max_column+1)]) if cur_str.find('***') >= 0: dutys.append({'date': all_data.cell(row=r,column=2).value,'name': all_data.cell(row=r,column=3).value }) elif cur_str.find(none_str) >= 0: break return dutysdef create_my_duty_list(dutys): book = openpyxl.Workbook() sheet = book.active for i in range(len(dutys)): sheet.cell(row=1 + i, column=1).value = dutys[i].get('name') sheet.cell(row=1 + i, column=2).value = f’{dutys[i].get('date')}’ book.save(’my_duty.xlsx’)if __name__ == '__main__': start_time = int(round(time.time() * 1000)) dutys = get_my_duty_date() create_my_duty_list(dutys) end_time = int(round(time.time() * 1000)) print(f’本次提取值班表時間:{end_time - start_time}ms’)六、執行結果

Python還能這么玩之只用30行代碼從excel提取個人值班表

七、總結

熟悉 openpyxl 模塊的各個功能,方便對 excel 的操作;篩選提取自己關注的關鍵信息,重新建表;下一篇根據值班時間,用 python 自動給自己的微信發送信息,進行提示!

到此這篇關于Python還能這么玩之只用30行代碼從excel提取個人值班表的文章就介紹到這了,更多相關Python從excel提取個人值班表內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Python excel
主站蜘蛛池模板: 国产成人免费视频网站视频社区 | 中文字幕日韩久久 | 日韩在线视频精品 | 欧美一区二区三区 | 成人在线免费视频 | 婷婷色国产偷v国产偷v小说 | 黄色直接看 | 免费观看www免费观看 | 九九热在线视频免费观看 | 久久久午夜爽爽一区二区三区三州 | 日韩中文字幕在线观看 | 影音先锋中文字幕一区 | 国产99久久 | 日韩视频在线一区二区 | 五月婷婷丁香婷婷 | 欧美黄色大片网站 | 亚洲国产精品久久久久久久 | 99中文字幕| 欧美日韩视频第一页 | 91欧美| 一区二区免费 | 狠狠操天天干 | 激情网站免费观看 | 国产中文在线播放 | 久草免费福利 | 亚洲成人激情在线观看 | 日韩一区精品 | 午夜精品久久久久99蜜 | 中文字幕免费在线 | 欧美一区二区在线 | 中文字幕乱码亚洲精品一区 | 亚洲一区二区三区四区五区午夜 | av一二三区 | 日韩中文字幕在线视频 | 久久精品国产一区 | 亚洲精品一区二区三区精华液 | 一级大片一级一大片 | 日韩欧美视频 | 免费在线一区二区三区 | 亚洲欧美日韩精品久久奇米色影视 | 天堂资源在线 |