❶ 如何使用python编辑一个表格,写入粘贴板,粘贴出来的数据可以匹配到excel里
将#替换为空格,代码如下:
from ctypes import *
user32 = windll.user32
kernel32 = windll.kernel32
def set_clipboard(data):
####user32.OpenClipboard(c_int(0))
####user32.EmptyClipboard()
####alloc = kernel32.GlobalAlloc(0x2000, len(bytes(data, encoding='utf_8'))+1)
####lock = kernel32.GlobalLock(alloc)
####cdll.msvcrt.strcpy(c_char_p(lock),bytes(data, encoding='utf_8'))
####kernel32.GlobalUnlock(alloc)
####user32.SetClipboardData(c_int(1),alloc)
####user32.CloseClipboard()
set_clipboard("A\t1\t2\t3\nB\t1\t2\t4")
❷ 用python语言将一定格式的txt文件复制到excel
这个要用到类库xlwt 这个程序是我自己写的 我试过了,完全可以。最后一行不要 我截图截多了
❸ 如何在python / pandas中复制excel COUNTIFS
# -*- coding: utf-8 -*-
import xlwt
import pandas as pd
import numpy as np
from xlrd import open_workbook
from xlutils. import
data = 'all.xls'
muban = 'muban.xls'
for mon in range( 201501, 201513 ):
allData = pd.read_excel( data, sheetname = str( mon ), skiprows = [ 0, 1 ] )
allData = allData.iloc[ : -2, : 10 ] # 除去表头表尾
allData.sort_values( by = [ '单据号码', '物料编码' ], inplace = True )
for dj in allData[ '单据号码' ].drop_plicates():
newFile = dj + '.xls'
thisData = allData[ allData[ '单据号码' ] == dj ]
date = thisData[ '发生日期' ].iloc[ 0 ]
rb = open_workbook(muban,formatting_info=True)
rs = rb.sheet_by_index(0)
wb = (rb)
s=wb.get_sheet(0)
s.set_name(dj)
font = xlwt.Font()
font.name = 'Arial Narrow'
font.color = 'red'
font.size = 10
style = xlwt.XFStyle()
style.font = font
s.write(2,4,date, style)
s.write(2,7,dj, style)
borders = xlwt.Borders()
borders.left = xlwt.Borders.DOUBLE
for row in range( len( thisData ) ):
for col in range( len( thisData.columns ) - 2 ):
content = thisData.iloc[ row, col ]
content = "" if type(content)==type(1.3) and np.isnan(content) else content
if col == 0:
style = xlwt.XFStyle()
style.borders = borders
s.write(5+row,1+col, content, style )
else:
s.write(5+row,1+col, content )
borders = xlwt.Borders()
borders.bottom = xlwt.Borders.DOUBLE
style = xlwt.XFStyle()
style.borders = borders
s.write(106,6,xlwt.Formula("sum(G6:G106)"), style )
s.write(106,7,xlwt.Formula("sum(H6:H106)"), style )
wb.save(str( mon ) + "_" + newFile )
❹ python复制excel文件
# -*- coding: utf-8 -*-
import xlrd
import shutil
import os
def read_excel():
# 打开文件
workbook = xlrd.open_workbook(r'C:\Users\xxx\Desktop\xxx.xls')
# 获取所有sheet
print (workbook.sheet_names()) # [u'sheet1', u'sheet2']
#获取sheet
sheet= workbook.sheet_names()[0]
sheet_data=workbook.sheet_by_name(sheet)
print(sheet_data)
# sheet的名称,行数,列数
print (sheet_data.name,sheet_data.nrows,sheet_data.ncols)
rows = sheet_data.row_values(0) # 获取第四行内容
cols = sheet_data.col_values(2) # 获取第三列内容
print (rows)
for i,j in enumerate(rows):
print(i,':',j)
for i in range(sheet_data.nrows):
strr=sheet_data.row_values(i)[5][:5]
if(strr == 'AXIAL'):
dicom_path=sheet_data.row_values(i)[15]
row_path=sheet_data.row_values(i)[16]
print(row_path)
roww=row_path.split('\\',3)[3]
print(roww)
#row_path='C:\Users\xxx\Desktop\xxx'
path_now=os.path.join('\\\\xxx',roww)
print(path_now)
shutil.tree(path_now,r'C:\Users\xxx\Desktop\Get')
#shutil.tree(row_path,r'C:\Users\xxx\Desktop')
break
if __name__ == '__main__':
read_excel()
#文件复制主要利用shutil包,tree的第一个参数为需要复制的文件夹,第二个参数为目标位置;但第二个参数的目标位置必须不存在,否则会报错。
❺ python 处理excel表格,对比2个表格的前5列内容,把内容复制过去
这两个表格之间是什么关系?
❻ python如何实现复制excel第2列的2-8行到第3列1-7行
❼ python可以带格式复制粘贴excel里的单元格吗
直接对单元格读写是操作的Cells.Value,只对值影响,公式会丢失,格式保持不变。
如果需要复制格式,需要程序以对象打开EXCEL,使用Range.Copy方法复制。
❽ 如何用Python复制excel内容到剪切板
方法一 打开Excel,点击“编辑”-“Office剪切板”,即可在窗口右侧出现“剪切板”。 方法二 Excel中,选中一单元格,连续两次按复制(或剪切)的快捷键“Ctrl+c”(或“Ctrl+x)”亦可调出“剪切板”
❾ python提取excel表中的数据两列
1、首先打开excel表格,在单元格中输入两列数据,需要将这两列数据进行比对相同数据。
2、然后在C1单元格中输入公式:=VLOOKUP(B1,A:A,1,0),意思是比对B1单元格中A列中是否有相同数据。
3、点击回车,即可将公式的计算结果显示出来,可以看到C1中显示的是B1在A列中找到的相同数据。
4、将公式向下填充,即可发现C列中显示出的数字即为有相同数据的,显示“#N/A”的为没有找到匹配数据的。
5、将C1-C4中的数据进行复制并粘贴成数值,即可完成相同数据的提取操作。
在实际研究中,我们经常需要获取大量数据,而这些数据很大一部分以pdf表格的形式呈现,如公司年报、发行上市公告等。面对如此多的数据表格,采用手工复制黏贴的方式显然并不可取。那么如何才能高效提取出pdf文件中的表格数据呢?
Python提供了许多可用于pdf表格识别的库,如camelot、tabula、pdfplumber等。综合来看,pdfplumber库的性能较佳,能提取出完整、且相对规范的表格。因此,本推文也主要介绍pdfplumber库在pdf表格提取中的作用。
作为一个强大的pdf文件解析工具,pdfplumber库可迅速将pdf文档转换为易于处理的txt文档,并输出pdf文档的字符、页面、页码等信息,还可进行页面可视化操作。使用pdfplumber库前需先安装,即在cmd命令行中输入:
pip install pdfplumber
pdfplumber库提供了两种pdf表格提取函数,分别为.extract_tables( )及.extract_table( ),两种函数提取结果存在差异。为进行演示,我们网站上下载了一份短期融资券主体信用评级报告,为pdf格式。任意选取某一表格,其界面如下:
接下来,我们简要分析两种提取模式下的结果差异。
(1).extract_tables( )
可输出页面中所有表格,并返回一个嵌套列表,其结构层次为table→row→cell。此时,页面上的整个表格被放入一个大列表中,原表格中的各行组成该大列表中的各个子列表。若需输出单个外层列表元素,得到的便是由原表格同一行元素构成的列表。例如,我们执行如下程序:
输出结果:
(2).extract_table( )
返回多个独立列表,其结构层次为row→cell。若页面中存在多个行数相同的表格,则默认输出顶部表格;否则,仅输出行数最多的一个表格。此时,表格的每一行都作为一个单独的列表,列表中每个元素即为原表格的各个单元格内容。若需输出某个元素,得到的便是具体的数值或字符串。如下:
输出结果:
在此基础上,我们详细介绍如何从pdf文件中提取表格数据。其中一种思路便是将提取出的列表视为一个字符串,结合Python的正则表达式re模块进行字符串处理后,将其保存为以标准英文逗号分隔、可被Excel识别的csv格式文件,即进行如下操作:
输出结果:
尽管能获得完整的表格数据,但这种方法相对不易理解,且在处理结构不规则的表格时容易出错。由于通过pdfplumber库提取出的表格数据为整齐的列表结构,且含有数字、字符串等数据类型。因此,我们可调用pandas库下的DataFrame( )函数,将列表转换为可直接输出至Excel的DataFrame数据结构。DataFrame的基本构造函数如下:
DataFrame([data,index, columns])
三个参数data、index和columns分别代表创建对象、行索引和列索引。DataFrame类型可由二维ndarray对象、列表、字典、元组等创建。本推文中的data即指整个pdf表格,提取程序如下:
其中,table[1:]表示选定整个表格进行DataFrame对象创建,columns=table[0]表示将表格第一行元素作为列变量名,且不创建行索引。输出Excel表格如下:
通过以上简单程序,我们便提取出了完整的pdf表格。但需注意的是,面对不规则的表格数据提取,创建DataFrame对象的方法依然可能出错,在实际操作中还需进行核对。
关于我们
微信公众号“爬虫俱乐部”分享实用的stata命令,欢迎转载、打赏。爬虫俱乐部是由李春涛教授领导下的研究生及本科生组成的大数据分析和数据挖掘团队。
投稿要求:
1)必须原创,禁止抄袭;
2)必须准确,详细,有例子,有截图;
❿ Python 怎么使用openpyxl复制Excel单元格样式
前面几个章节,简单介绍了openpyxl模块及使用该模块对Excel文件进行简单操作,并通过一个实战项目(人口数据统计)展示了使用openpyxl模块处理Excel文件的优势。今天,我们主要梳理通过openpyxl如何对Excel文件的单元格样式进行编辑。也许有人要问对于Excel文件中的单元格直接利用鼠标键盘进行编辑设置是很方便的,为什么要使用openpyxl进行设置呢?试想,如果Excel文件足够大,比如几M或者更大,某些低配电脑打开这些大文件都是很不方便的(大部分办公电脑配置都不高哦),别提利用鼠标对个别单元格样式进行设置了,查找就很不方便的……这次我们利用上节课实战中得到的人口统计表对表格中的样式进行设置,看看使用openpyxl设置单元格样式的方便之处。
一、单元格样式简介
openpyxl处理Excel文件中单元格样式,总共有六个属性类。分别是:font(字体类,可设置字号、字体颜色、下划线等)、fill(填充类,可设置单元格填充颜色等)、border(边框类,可以设置单元格各种类型的边框)、alignment(位置类、可以设置单元格内数据各种对齐方式)、number_format(格式类,可以设置单元格内各种类型的数据格式)、protection(保护类,可以设置单元格写保护等)。
二、单元格样式设置实例
我们使用官方文档的例子进行梳理。