python3.7 利用函数os pandas利用excel对文件名进行归类

yipeiwu_com7年前Python基础

这里用的python 版本是3.7最新的版本写的。 利用excel ,对门店的二维码对对应所属小区进行分类,比如在excel 江南摩尔店对应浙北大区,那么二维码名字为江南摩尔店的会自动分类到浙北大区这个文件夹中。

二维码图片文件如下:

我们在excel 利用简单的VLOOKUP函数进行数据匹配后得到如下:

这里意思是 江南摩尔店,平湖新华中路 属于浙北大区以此类推。

小区 门店
浙北大区 江南摩尔店
浙北大区 平湖新华中路
浙北大区 上虞青春店
浙北大区 上虞阳光店
浙北大区 三水湾店
浙北大区 吉水店
浙北大区 洪波路店
浙北大区 嘉善健康店
浙北大区 施家北路店
浙北大区 少年路店
浙北大区 王江泾店
浙北大区 海角湾店
浙北大区 舜湖店
浙北大区 桐乡庆丰店
浙西一区 龙游太平店
浙西一区 龙游北门店
浙西一区 衢州蛟池店
浙西一区 开化步行店
浙西一区 江山解放路
浙西一区 开化解放路
浙西一区 兰溪聚仁店
浙西一区 兰溪星辰店
浙西一区 建德店
浙西一区 龙游人民路
浙西二区 丽水中东店
浙西二区 丽水解放店
浙西二区 武义解放店
浙西二区 武义东升店
浙西二区 遂昌北街
.... ....

代码如下:

# encoding:utf-8
import os, shutil
import pandas as pd
while True:
  """
  下面try 代码是在D盘创建3个文件夹
  """
  try:
    os.makedirs("d:/shop/area")
    os.makedirs("d:/shop/qrcode")
    os.makedirs("d:/shop/excel")
 
  except:
 
    area_path = "d:/shop/area" #读取需要分类的大类路径
    qrcode_path = "d:/shop/qrcode" #读取文件
    excel_path = "d:/shop/excel" #读取excel
    info = input("请把需要分类依据的excel表格放入到:%s,放入好请输入y:" % excel_path) #这里我没有写判断是否存在文件,而是一个放入文件缓冲
    if info == "y" or "Y":
      excel_file = os.listdir(excel_path) #读取excel文件夹的文件
      rd_excel = pd.read_excel("d:/shop/excel/%s" % excel_file[0]) #读取excel内容
      list_shop = rd_excel.values.tolist() #讲excel 转成列表
      infocode = input("请把二维码文件放入到:%s,放入好请按y:" % qrcode_path) #这里我没有写判断是否存在文件,而是一个放入文件缓冲
      if infocode == 'y' or 'Y':
        qrcode_file = os.listdir(qrcode_path) #读取二维码目录下文件
        for shops in list_shop: #循环excel转成的列表的值
          for files in qrcode_file: #循环读取qrcode目录下文件
            ewm = os.path.splitext(files)[0] #讲qrcode 目录下文件进行分割出文件名
            if ewm == shops[1]: #判断 qrcode目录下的文件名是否等于表格中的需要进行分类的文件名
              if os.path.exists(area_path + '/' + shops[0]): #判断路径是否存在
                shutil.move(qrcode_path + '/' + ewm + '.png', area_path + '/' + shops[0]) #移动文件
              else:
                os.mkdir(area_path + '/' + shops[0]) #不存在,就创建文件 根据excel创建小区的文件夹
    break

完成好如下: 

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python获取指定字符串中重复模式最高的字符串方法

给定一个字符串,如何得到其中重复模式最高的子字符串,我采用的方法是使用滑窗机制,对给定的字符串切分,窗口的大小从1增加到字符串长度减1,将所有的得到的切片统计结果,在这里不考虑单个字符的...

python中itertools模块zip_longest函数详解

最近在看流畅的python,在看第14章节的itertools模块,对其itertools中的相关函数实现的逻辑的实现 其中在zip_longest(it_obj1, ..., it_o...

wxPython绘图模块wxPyPlot实现数据可视化

wxPython绘图模块wxPyPlot实现数据可视化

本文实例为大家分享了wxPython绘图模块wxPyPlot实现数据可视化的具体代码,供大家参考,具体内容如下 #-*- coding: utf-8 -*- #########...

wx.CheckBox创建复选框控件并响应鼠标点击事件

wx.CheckBox创建复选框控件并响应鼠标点击事件

本文实例为大家分享了wx.CheckBox创建复选框控件并响应鼠标点击事件的具体代码,供大家参考,具体内容如下 执行效果图: 执行代码: #!/usr/bin/env pytho...

使用Python和OpenCV检测图像中的物体并将物体裁剪下来

使用Python和OpenCV检测图像中的物体并将物体裁剪下来

介绍 硕士阶段的毕设是关于昆虫图像分类的,代码写到一半,上周五导师又给我新的昆虫图片数据集了,新图片中很多图片很大,但是图片中的昆虫却很小,所以我就想着先处理一下图片,把图片中的昆虫裁剪...