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中用memcached来减少数据库查询次数的教程

本来我一直不知道怎么来更好地优化网页的性能,然后最近做python和php同类网页渲染速度比较时,意外地发现一个很简单很白痴但是 我一直没发现的好方法(不得不BS我自己):直接像某些ph...

pytorch实现特殊的Module--Sqeuential三种写法

我就废话不多说了,直接上代码吧! # -*- coding: utf-8 -*- #@Time :2019/7/1 13:34 #@Author :XiaoMa import...

python读取Android permission文件

python读取Android permission文件

今天用python解析一个文本文件,格式如下:复制代码 代码如下:[    {      &nb...

Windows系统下多版本pip的共存问题详解

Windows系统下多版本pip的共存问题详解

前言 可能很多人一看到这个标题直接就关闭了,这么简单和low的问题有必要说出来吗?一看就知道是个Python的小白。如果你是这么想的话,那么就没有必要看下去了,因为对你来说也没有...

浅析Python中元祖、列表和字典的区别

1、列表(list)   list是处理一组有序项目的数据结构,即你可以在一个列表中存储一个序列的项目。   列表中的项目应该包括在方括号中,这样Python就知道你是指明一个列表。一旦...