求助,使用Python合并多个EXCEL表格时,如果表格有密码,密码已知,该怎么通过pandas合并,

作者&投稿:翟肺 (若有异议请与网页底部的电邮联系)
如何用python合并两个excel表格~

通过输出结果可以发现,value被pack之后,转化为了一段二进制字节串,而unpack可以把该字节串再转换回一个元组,但是值得注意的是对于float的精度发生了改变,这是由一些比如操作系统等客观因素所决定的。
打包之后的数据所占用的字节数与C语言中的struct十分相似。

Created on Mon Mar 16 11:23:05 2015
@author: admin
"""
# 分批次运行,先得到books, 再运行,利用print 来debugimport pandas as pd
import numpy as np
import matplotlib as pl
import os
count=0
#ori_path='xx'
ori_path='C:\Python27\data\sample'
def get_xls_books(ori_path): # get target filename and dir of a pathtemp = list(os.walk(ori_path)) #tmp is list ,tmp[0]该目录文件路径和文件名, tmp[1]:子目录文件路径,文件名称book_path=[]
book_name=[]
root=temp[0][0]
for i in temp[0][2]:
if os.path.splitext(i)[1] == '.xlsx': #splite filenameobj_path=os.path.join(root,i)
book_path.append(obj_path)
book_name.append(os.path.splitext(i)[0])
return zip(book_path, book_name)
def get_xls_sheets(obj_path): #get all sheets of a object pathxls=pd.ExcelFile(obj_path)
sheet_names=xls.sheet_names
sheets=[xls.parse(i) for i in range(0,len(sheet_names)) ] # use parse can get dataframe saved into a listreturn zip(sheet_names,sheets)
books=get_xls_books(ori_path) # book paths list#xls=pd.ExcelFile(books[0])
#print xls.parse(0).columns
for book in books: # this loop get a bookbookname=book[1]
bookpath=book[0]
sheets=get_xls_sheets(bookpath) # get all sheets and names from book pathfor i in range(len(sheets)): #operate each sheet, is range(len) not lensheetname=sheets[i][0]
name=bookname+'-'+sheetname+'.'+'csv'
pd_sheet=sheets[i][1] # dataFrame
cols=pd_sheet.columns
pdf=pd_sheet[[cols[17],cols[18],cols[4],cols[6],cols[8],cols[10],cols[19],cols[16]]] # use emunerate functionpdf.columns=['area','patch','wangdian','operator','custid','servid','servtype','is_identify'] # renamepdf1=pdf[pdf['is_identify']=='是'] #filterpdf2=pdf1.drop('is_identify',1)
pdf2.to_csv(os.path.join(ori_path,name), header=None, index=None)

pandas是为Python编程语言编写的用于数据处理和分析的软件库。合并同一目录下的多个excel文件是办公中经常遇到的场景,本文将利用pandas完成该操作。
1 引入作案工具(pandas 和 路径工具)
import pandas as pd
from pathlib import Path
2 传入excel所在目录
excel_dir = Path('excel目录,如:E:/excel_files')
3 获取到路径下面的 excel 文件列表
excel_files = excel_dir.glob('*.xlsx')
4 创建 pandas 表格类型 dataFrame
df = pd.DataFrame()
5 遍历excel文件,读到数据添加到pandas表格中
for xls in excel_files:
data = pd.read_excel(xls, 'sheet_name')
df = df.append(data)
6 将pandas表格中所有数据(合并后的excel数据)写入到新的excel中
df.to_excel(excel_dir / "output.xlsx")

  1. 安装msoffcrypto-tool:pip install msoffcrypto-tool

  2. 执行以下代码:

import msoffcrypto
import io
import pandas as pd

file = msoffcrypto.OfficeFile(open("encrypted.xlsx", "rb"))

file.load_key(password="Passw0rd") # Use password

decrypted = io.BytesIO()
file.decrypt(decrypted)

df = pd.read_excel(decrypted)
print(df)

3. 合并多个Excel表格:data = pd.concat([df0, df1, ...], axis=0)




Python 从入门到精通推荐看哪些书籍呢?
《利用Python进行数据分析》这本书籍是数据分析入门必读书籍的,书里详细介绍了利用Python进行操作、处理、清洗和整理数据等方面的基本要点和具体细节。还有大量的实践案例,用Python3个库numpy(数组)、pandas(数据分析)、matplotlib(绘图)应对一般的数据分析完全够用。我当时学习时候,直接学的是这本书,感觉...

一篇文章带你深度解析Python线程和进程
使用Python中的线程模块,能够同时运行程序的不同部分,并简化设计。如果你已经入门Python,并且想用线程来提升程序运行速度的话,希望这篇教程会对你有所帮助。 线程与进程 什么是进程 进程是系统进行资源分配和调度的一个独立单位 进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分...

python学习机器学习需要哪些功底,零基础可以吗
零基础可以使用Python进行机器学习。如需使用Python进行机器学习推荐选择【达内教育】。使用Python进行机器学习,要掌握以下基础:1、掌握Python基础知识。2、了解Python科学计算环境。熟悉4种工具的基础知识,因为它们在基本的【Python机器学习】中得到了很好的应用。3、分类。分类是监督学习的主要方法之一,并且...

python的快捷键
PYTHON超实用的快捷键√一般人我都不告诉他 1、编辑(Editing Ctrl+Space基本的代码完成(类、方法、属性)Ctrl+Alt+Space快速导入任意类 Ctrl+Shift+Enter语句完成 Ctrl+P参数信息(在方法中调用参数)Ctrl+Q快速查看文档 Shift+F 1外部文档 Ctrl+鼠标简介 Ctrl+F 1显示错误描述或警告信息 Alt+Insert自动...

学Python能干什么?
Python可以做什么?1)网站后端程序员:使用它单间网站,后台服务比较容易维护。如:Gmail、Youtube、知乎、豆瓣 2)自动化运维:自动化处理大量的运维任务 3)数据分析师:快速开发快速验证,分析数据得到结果 4)游戏开发者:一般是作为游戏脚本内嵌在游戏中 5)自动化测试:编写为简单的实现脚本,运用在...

自学python需要的软件
用Python语言编写程序的时候无需考虑,诸如如何管理你的程序使用的内存一类的底层细节。由于它的开源本质,Python已经被移植在许多平台上(经过改动使它能够工作在不同平台上),这些平台包括Linux、Windows、FreeBSD、Macintosh、Solaris、OS\/2以及Google基于linux开发的android平台。

python有什么用
Python有很多用途,Python主要有以下主要应用:Web开发、数据科学、自动化运维,让运维工作变得简单、快速、准确等,若想学习Python,推荐选择达内教育,python教程,为零基础量身打造的python课程,从入门到精通,轻松入门,利用自己的碎片时间学习python。达内教育该机构是引领行业的职业教育公司,致力于面向IT...

python语言有什么优势
Python是目前公认的全球5大流行语言之一,从云计算、大数据到人工智能,Python无处不在,百度、阿里巴巴、腾讯等一系列大公司都在使用Python完成各种任务,Python发展如此迅猛,究竟有什么优势呢?1. 简单 Python采用极简主义设计思想,语法简单优雅,不需要很复杂的代码和逻辑,即可实现强大的功能,很适合初学...

大学生必看Python神级学习网站
新手入门Python学习网站 1.udemy 它提供从初学者到专家级别的 Python 课程。你可以使用 Udemy 学习 Python 2和 Python 3这两个版本。它还包括有关 Python 的高级功能,包括集合模块、装饰器和时间戳等了解概念后,可以通过编码练习来测试自学效果,教你学习如何使用 Python 创建游戏,例如纸牌游戏。开始...

如何要学习python爬虫,我需要学习哪些知识
Python中爬虫相关的包很多:urllib、requests、bs4、scrapy、pyspider 等,我们可以按照requests 负责连接网站,返回网页,Xpath 用于解析网页,便于抽取数据。2.了解非结构化数据的存储 爬虫抓取的数据结构复杂 传统的结构化数据库可能并不是特别适合我们使用。我们前期推荐使用MongoDB 就可以。3. 掌握一些常用...

吴兴区13056871253: 如何用python把多个excel文件自动合并到一个文件中 -
靳馨化痰: 工作中经常用到Excel,很多事情都重复处理,比如每天的日报,每周的周报,各种数据表,这种固定的表其实都是重复性的劳动.最近这段时间一直在学python,但是断断续续的,眼高手低,看别人的代码看的很懂,但是自己就是写不出来,...

吴兴区13056871253: 如何用python合并两个excel表格 -
靳馨化痰: 通过输出结果可以发现,value被pack之后,转化为了一段二进制字节串,而unpack可以把该字节串再转换回一个元组,但是值得注意的是对于float的精度发生了改变,这是由一些比如操作系统等客观因素所决定的. 打包之后的数据所占用的字节数与C语言中的struct十分相似.

吴兴区13056871253: python实现excel合并 -
靳馨化痰: Created on Mon Mar 16 11:23:05 2015 @author: admin """ # 分批次运行,先得到books, 再运行,利用print 来debugimport pandas as pd import numpy as np import matplotlib as pl import os count=0 #ori_path='xx' ori_path='C:\Python27\...

吴兴区13056871253: Python中,有两个list,不用+和append extend,怎么把两个列表合并? -
靳馨化痰: append向后面添加元素,参数可以是任何东西,将作为元素添加到列表尾部.extend使用一个序列扩展另一个list,参数是序列.序列中的元素将逐项添加到列表的尾部.123456789In [2]: a=[1,2]In [3]: a.append(3)In [4]: a.append([4])In [5]: aOut[5]: [1, 2, 3, [4]]In [6]: a.extend([5,6,7])In [7]: a.extend((8,9))In [8]: aOut[8]: [1, 2, 3, [4], 5, 6, 7, 8, 9]

吴兴区13056871253: python如何合并两个列表的内容 -
靳馨化痰: >>> l1= [1,2,3]>>> l2 = [4,5,6]>>> print l1+l2 [1, 2, 3, 4, 5, 6]>>>

吴兴区13056871253: python语句中合并两个列表并且将列表中的数安大小排列 -
靳馨化痰: 假设原来的两个list是L1,L2.1,合并:L = L1+L2 2,排序sorted(L) 默认从小到大排列,如果要从大到小排列就是sorted(L,reverse=True) 合起来就是 L=sorted(L1+L2, reverse=True)

吴兴区13056871253: 在python中如何将两个list合并成一个list,不用for语句 -
靳馨化痰: 除了直接相加(生成新的list),还有两种方法(修改其中一个list):1. 用list的extend方法,L1.extend(L2),该方法将参数L2的全部元素添加到L1的尾部,例如:>>> L1 = [1, 2, 3, 4, 5]>>> L2 = [20, 30, 40]>>> L1.extend(L2)>>> L1 [1, 2, 3, 4, 5, 20, ...

吴兴区13056871253: python 将两个list合并成为一个嵌套的list -
靳馨化痰: 1可以使用"+"号完成操作输出为:[1, 2, 3, 8, 'google', 'com']2.使用extend方法、输入相同3使用切片输出相同PS:len(l1)代表要将l2插入l1中的位置例如输出为:又如:输出为:总结:第一种方方法思路比较清晰,就是运算符的重载;第二种方法比较简洁,但会覆盖原始list;第三种方法功能比较强大,可以将一个列表插入另一个列表的任意位置

吴兴区13056871253: python几个不同list进行合并 -
靳馨化痰: #!/usr/bin/env python# coding: utf-8 a = [[1,2],[3,4]] b = [['a','b'],['c','d'],['e','f']] c = [['a1', 0]] d = [[10, 20],[11,21]] additional = ['NULL', 'NULL'] def mergeList(*lsts): maxlength = max(map(len, lsts)) data = map(lambda x: x + (maxlength - len(x)) * [additional],...

吴兴区13056871253: python 怎么 合并两个压缩包 -
靳馨化痰: Python编程将多个文件合并,代码如下: #例子:合并a.txt、b.txt、c.txt合并成d.txt文件 #文件列表,遍于读取 flist = ['a.txt','b.txt','c.txt'] #要写入的文件 ofile = open('d.txt', 'w') #遍历读取所有文件,并写入到输出文件 for fr in fli...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网