用Python程序批量删除excel里面的图片
前言
文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。
作者: Rhinoceros
PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取
http://note.youdao.com/noteshare?id=3054cce4add8a909e784ad934f956cef
单个excel文件
读取
# 使用xlrd读取excel文件
wb = open_workbook(path + '/' + name)
获取每个工作表
# 获取当前文件的工作表(sheet)list
sheetList = wb.sheets()
...
for sheet in sheetList:
...
修改工作表
# 修改工作表使用的是xlutils, 其实也可以用xlwt,
# 我没有用,原因:用资料上demo,demo使用的是这个,虽然demo没有跑通
from xlutils.copy import copy
...
wb = open_workbook(path + '/' + name)
...
# 复制原文件,因为原文件只能读取,不能写入数据,所以要复制得到一个可以写入数据的文件
newwb = copy(wb)
...
for row in sheet.get_rows():
# 遍历每一行,当8列的值小于12时,就把该值改为0
if row[0].value < 12:
newsheet.write(index, 0, 0)
...
保存
newwb.save('./data/' + name)
文件下的excel文件
获取文件列表
import os
os.listdir(path)
功能如下:

全部代码如下:
# -*- coding: utf-8 -*-
from xlrd import open_workbook
from xlutils.copy import copy
import os
def editExl(path, name):
if os.path.exists('/data'):
os.removedirs("/data")
# 括号里放入要读取的文件的绝对路径,相对路径也可以
# os.getcwd() 返回当前.py文件所在的绝对路径
# print(os.getcwd(), 'lujing')
wb = open_workbook(path + '/' + name)
# 获取所读取文件的第一张表单
# sheet = wb.sheet_by_index(0)
# 获取该表单的行数
# s = sheet.nrows
# 获取当前文件的工作表(sheet)list
sheetList = wb.sheets()
# print('sheetList', sheetList)
# 复制原文件,因为原文件只能读取,不能写入数据,所以要复制得到一个可以写入数据的文件
newwb = copy(wb)
sheetIndex = 0
for sheet in sheetList:
# 获取可写文件的第一张表单
newsheet = newwb.get_sheet(sheetIndex)
# print(newsheet, newsheet.get_rows())
index = 0
try:
for row in sheet.get_rows():
# 遍历每一行,当8列的值小于12时,就把该值改为0
# print(row)
# print(row[0].value, '000000000000000')
if row[0].value < 12:
# print('here', index)
newsheet.write(index, 0, 0)
# print('after here')
index = index + 1
except:
print("aaa")
sheetIndex = sheetIndex + 1
mkdir('./data')
newwb.save('./data/' + name)
def mkdir(path):
folder = os.path.exists(path)
if not folder:
os.makedirs(path)
print('--- folder mk ---')
else:
print('--- folder exists ---')
def getFileList(path):
return os.listdir(path)
def editAll():
originPath = './origin'
fileList = getFileList(originPath)
# print(fileList)
for fileItem in fileList:
editExl(originPath, fileItem)
editAll()
用Python程序批量删除excel里面的图片的更多相关文章
- 批量删除Excel里面的换行符
关于批量删除excel里面的换行符,应该说写程序的遇上excel大体都会有这么个问题,在解决这个问题前,我的解决办法是把excel 的数据全部复制到txt里面, 因为操作txt比操作excel更为简单 ...
- ArcGis Python脚本——批量删除字段
注意,ArcGis中shp属性表至少要保留除OID(FID).Shape之外的1个字段. 例:批量删除“省级行政区域”除“FID”.“Shape”.“Area”之外的字段. import arcpy ...
- 使用python脚本批量删除阿里云oss中的mp4文件
#encoding:utf-8 ''' oss中有一些mp4文件需要删除,首先定位出这些文件放在txt文本中 然后通过python操作oss进行批量删除 ''' import oss2 auth = ...
- python 作业 批量读取excel文件并合并为一张excel
1 #!/usr/bin/env python 2 # coding: utf-8 3 4 def concat_file(a,b): 5 #如何批量读取并快速合并文件夹中的excel文件 6 imp ...
- Python/Django 批量下载Excel
一.前提 项目上需求的变更总是时时发生的,应对需求的我们,也只能变更我们代码,所以.继前两篇之后,我们的批量下载诞生了 二.安装 本文使用zipstream库进行压缩,安装方式:pip install ...
- Python批量删除mysql中千万级大量数据
场景描述 线上mysql数据库里面有张表保存有每天的统计结果,每天有1千多万条,这是我们意想不到的,统计结果咋有这么多.运维找过来,磁盘占了200G,最后问了运营,可以只保留最近3天的,前面的数据,只 ...
- 涛哥的Python工具箱之批量删除含指定字符串行
我们在软件研发中不可避免的要用到大量的反复性的繁琐的工作,比如批量改动代码中接口的字符串.批量下载文件并又一次按规则命名.这些工作人工做特别累,尤其是对我这样的懒人来说. 对于一个出色的程序猿来说,反 ...
- 用python批量处理Excel表格,处理结果又快又好,做办公室最靓的那个仔
使用python批量处理Excel数据 让你根据Excel上所有人的身份证号码,提取出公司员工的生日 让你每个月都将公司所有人的考勤数据整理一下 类似这样的格式化的重复操作,你还在每次都使用的 ...
- Python批量删除指定目录下的指定类型的文件
Python作为一种脚本语言.其很适合文件级的各种操作.以下的代码能够批量删除指定目录下的所有特定类型(CSV类型)的文件. import sys, csv , operator import os ...
随机推荐
- 深度学习VGG16模型核心模块拆解
原文连接:https://blog.csdn.net/qq_40027052/article/details/79015827 注:这篇文章是上面连接作者的文章.在此仅作学习记录作用. 如今深度学习发 ...
- PlayJava Day021
容器: Collection接口:定义了存取一组对象的方法,其子接口Set和List分别定义了存储方式 List:存储数据有序且可重复 ----> ArrayList Set:存储数据无序且不可 ...
- Dynamics CRM 2015/2016新特性之三十四:有了插件日志,调试插件so easy!
关注本人微信和易信公众号: 微软动态CRM专家罗勇 ,回复217或者20160330可方便获取本文,同时可以在第一间得到我发布的最新的博文信息,follow me!我的网站是 www.luoyong. ...
- opencv-python 图像基础处理(二)
图像阈值 ret, dst = cv2.threshold(src, thresh, maxval, type) - src: 输入图,只能输入单通道图像,通常来说为灰度图- dst: 输出图- th ...
- xBIM 综合使用案例与 ASP.NET MVC 集成(一)
XbimWebUI是一个Javascript库,可用于BIM模型的Web表示.它使用WebGL并且独立于任何第三方WebGL框架.查看器的数据格式为WexBIM.不能直接加载IFC文件. 一.将IFC ...
- Python进阶基础学习(多线程)
Python进阶学习笔记(一) threading模块 threading.thread(target = (函数)) 负责定义子线程对象 threading.enumerate() 负责查看子线程对 ...
- Spring Cloud中五大神兽总结(Eureka/Ribbon/Feign/Hystrix/zuul)
Spring Cloud中五大神兽总结(Eureka/Ribbon/Feign/Hystrix/zuul) 1.Eureka Eureka是Netflix的一个子模块,也是核心模块之一.Eureka是 ...
- 房屋布局分析《Physics Inspired Optimization on Semantic Transfer Features: An Alternative Method for Room Layout Estimation》
视觉算法在智能审核系统上的演进与实践 刘天悦 贝壳找房 / 资深工程师 https://static001.geekbang.org/con/56/pdf/1088777747/file/%E8%A7 ...
- 设计模式-Strategy Strategy将算法封装到类中,通过组合的方式 将具体算法的实现在组合对象中实现
以下代码来源: 设计模式精解-GoF 23种设计模式解析附C++实现源码 //strategy.h #pragma once class Strategy { public: Strategy(); ...
- 2019CSP-J/S受虐记
emmmm...... 今年noip很波折,我从7月开始准备 但CCF居然停了noip,这搞得我很迷茫,CCF你在干什么! 然后又恢复了,这有搞得我很懵逼?(还改名叫csp了) 就换了个名,CCF你搞 ...