Python高效办公|自动分发任务_数据源

01 问题描述

在工作中,总能遇到分配任务的问题,例如我自己的工作中,一大堆的影像图(一个影像图是几个文件组成),要根据地区分发给不同的同事,如果用电脑本身的搜索文件工具,然后依次拷贝给各个同事,是很崩溃的一件事情(文件多而且很大)。

这里我将问题稍微简化下,具体流程还是一样的,那我们来看下需求吧。首先我们有一个任务表,这里是不同员工需要的数据。

Python高效办公|自动分发任务_字段_02

接着我们来看我们的数据源,每个数据对应了txt和xlsx格式。

Python高效办公|自动分发任务_数据_03

简单的说就是,一个任务有两个文件(txt和xlsx),根据任务表,将这些数据分发到不同的文件夹下(文件夹取名为员工名字)。

解决方法

那我们来一步步解决这个问题:

① 读入任务表,用于后文任务的检索。

import pandas as pd  
task = pd.read_excel('任务.xlsx',sheetname='Sheet1')
task['任务'] = task['任务'].astype('object')
task

这里将任务数据的格式转换为字符串。

② 通过员工字段唯一值,来建立相应的文件夹。

for t in task['员工'].unique():    
os.makedirs(t)

③ 循环任务数据,以及员工任务,当任务数据在当前员工的任务中时,就对数据进行移动。

import os    
import shutil
path = '数据/'
task_lists = os.listdir(path)
for task_list in task_lists:
for t in task['员工'].unique():
if (task_list.split('.')[0]) in list(task[task['员工'] == t]['任务']):
shutil.move(path+task_list,t+'/'+task_list)

这样,就能完美的把数据分发给不同的人啦。