首页
学习
活动
专区
圈层
工具
发布

Python从0到100(二十一):用Python读写Excel文件

当然,Excel也有很多竞品,例如Google Sheets、LibreOffice Calc、Numbers等,这些竞品基本上也能够兼容Excel,至少能够读写较新版本的Excel文件,当然这些不是我们讨论的重点...Python操作Excel需要三方库的支持,如果要兼容Excel 2007以前的版本,也就是xls格式的Excel文件,可以使用三方库xlrd和xlwt,前者用于读Excel文件,后者用于写Excel文件...# xldate_as_tuple函数的第二个参数只有0和1两个取值 # 其中0代表以1900-01-01为基准的日期,1代表以1904-01-01为基准的日期...(sheet.nrows - 1, sheet.ncols - 1)print(last_cell_type)# 获取第一行的值(列表)print(sheet.row_values(0))# 获取指定行指定列范围的数据...英语')for index, title in enumerate(titles): # 设置列宽为200sheet.col(index).width = 20 * 200# 设置单元格的数据和样式

1.6K10

Laravel-Excel导出功能文档

$sheet->setPageMargin(0.25); 设置密码保护sheet 可以使用$sheet->protect() 保护sheet安全 // 默认保护 $sheet->protect('password...); // 字体加粗 $sheet->setFontBold(true); 边框 可以设置当前sheet的边框,如下: // 设置当前sheet的所有边框 $sheet->setAllBorders(...'); 更多边框属性设置参见手册 冻结行 如果你想冻结某个单元格、行或者列,操作方法如下: // 冻结第一行 $sheet->freezeFirstRow(); // 冻结第一列 $sheet->freezeFirstColumn...$sheet->setWidth(array( 'A' => 5, 'B' => 10 )); 设置行高 使用->setHeight($row, $height)设置行高...) )); 大小自适应 默认情况下导出的文件是大小自适应的,如果你想改变这一默认行为,可以修改config配置文件,或者如下设置 // 设置sheet大小自适应 $sheet->setAutoSize

14.1K500
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Python 自动化指南(繁琐工作自动化)第二版:十四、使用谷歌表格

    安装和设置 EZSheets 您可以通过打开一个新的终端窗口并运行pip install --user ezsheets来安装 EZSheets。...以列表形式获取一列或一行,更新列表,然后用列表更新整个列或行要快得多,因为所有的更改都可以在一个请求中完成。 要一次获得所有的行,调用getRows()方法返回一个列表列表。...外部列表中的内部列表分别代表工作表中的一行。您可以修改该数据结构中的值,以更改某些行的产品名称、售出磅数和总成本。...然后,通过设置这些值,您可以更改工作表的大小。...将此代码放入一个循环中,以识别工作表中哪一行的合计不正确。

    15.6K50

    VBA自动筛选完全指南(下)

    因此,这将筛选出任何包含“机”的项目。 示例:复制筛选出的行到新工作表 如果不仅要根据条件筛选记录,而且要复制筛选的行,那么可以使用下面的宏。...它复制筛选的行,添加新工作表,然后将这些复制的行粘贴到新工作表中。...如果没有筛选行,显示一条消息并退出程序。如果有筛选行,则复制筛选的数据,插入新工作表,然后粘贴这些数据到新插入的工作表中。...在受保护的工作表中使用自动筛选 默认情况下,当工作表受保护时,不能应用筛选。然而,如果已经设置了筛选,则可以启用自动筛选,以确保即使在受保护的工作表上也可以使用。...要执行此操作,选中“在保护工作表时使用自动筛选”选项,如下图4所示。 图4 虽然这在已设置了筛选时有效,但如果尝试使用VBA代码添加自动筛选,它将不起作用。

    5.2K30

    保护工作表密码忘记了,可以这样……

    有时候,打开很久以前的工作表,想要进行编辑,结果工作表设置了工作表保护,需要输入密码来撤消工作表保护,如下图1所示。 ? 然而,自己又忘记了保护工作表的密码,如下图2所示。 ? 怎么办?...可以利用Excel本身的特点来撤消工作表保护。 首先,将该Excel工作簿的后缀改为.rar,即压缩文件,如下图3所示,单击按钮“是”。 ?...接着,双击刚才的压缩文件,导航到worksheets文件夹中的sheet1.xml文件,如下图4所示。 ?...将sheet1.xml文件拖出来,使用记事本打开,找到,如下图5所示,将其删除。 ?...然后保存并关闭记事本,将sheet1.xml文件拖回到压缩文件夹中,替换掉原来的同名文件。 最后,将文件名后缀改回xlsx,如下图6所示。 ?

    2.1K30

    DevTools(Chrome 85)的新功能

    事件处理运行 promise 所达成的时间(issue #1066579[1]) 在 Console settings 中,Group similar 现在适用于重复的消息,并且控制台设置中的 Selected...}'); 但是,DevTools 不允许你编辑以这种方式创建的样式。...现在,我们有了即使没有选择任何内容,也可以在编辑器中复制或剪切当前行的功能[22]。 只需要把光标放在要复制或剪切的行的末尾,然后按相应的键盘快捷键: ?...将光标放在要复制或剪切的行的末尾,然后按相应的键盘快捷键 另一个改进是,如果你使用 WebAssembly 文件,则编辑器会显示 Wasm 模块字节码(十六进制)偏移量[23] : ?...编译之前 现在,缓存信息总是显示在摘要标签中[25],显示了未进行缓存的原因: ? 编译之后 第二个变化与录制规则中显示的时间有关。 在以前的版本中,时间是根据录制的开始时间显示的: ?

    1.2K30

    Python-操作Excel表-openpyxl模块使用

    主要功能和特点如下: 读取、修改、写入Excel文件,支持格式如xlsx、xlsm等 支持 Excel 2003 以上格式 可以很方便地遍历工作表中的行和列 获取单元格对象后,可以修改单元格的值、样式、...格式等 支持公式、图表、样式、筛选等功能 可以将Excel数据转换为Python中的字典或列表 支持 Pandas 的 DataFrame与Excel文件互相转换 支持数据验证、工作表保护、条件格式设置等高级功能...openpyxl.Workbook():新建一个Excel工作簿 wb.sheetnames:获取工作簿中的所有工作表名 wb.active:获取或设置工作簿的活动工作表 wb.create_sheet...ws.insert_rows():在指定位置插入行 ws.delete_rows():删除指定行 ws.merge_cells():合并单元格 单元格操作 cell.value:获取或设置单元格的值...():迭代工作表行 ws.iter_cols():迭代工作表列 ws.rows:以生成器方式返回所有行 ws.columns:以生成器方式返回所有列 ws.values:以嵌套列表方式返回所有值 ws.formula

    2.3K50

    告别单调工作系列——利用python再次拯救漂亮妹子

    sheets = rd.sheet_names() #获取所有sheet名 table = rd.sheet_by_name("sheet1") #通过sheet名获取名为 sheet1 的表...截图1 至于写法,其实两者差不多,直接看下官方文档即可,这里以xlwt举例: import xlwt # 创建一个workbook 设置编码 workbook = xlwt.Workbook(encoding...= 'utf-8') # 创建一个worksheet worksheet = workbook.add_sheet('Worksheet1') # 写入excel # 参数对应 行, 列, 值 worksheet.write...worksheet.write(3, 0, 'Formatted value', style) # 带样式的写入 # 设置单元格宽度 worksheet.col(0).width = 3333...";"Google")')) # 保存 workbook.save('test.xls') 后记 终于利用下班时间将这个需求搞定了,妹子很开心,但隐隐觉得没有达到她想要的,也许过几天,妹子又会乐呵呵的端着奶茶来找我了

    1.2K20

    使用Google App Script和Google Sheet自动生成数据仪表盘

    虽然已经有企业级的产品来帮助我们收集和可视化这种类型的数据,但是你也可以选择只使用Google App Script和Google Sheet来生成自动化的仪表盘。...上面的第一点已经在我的队友发布的如何使用Google Sheet制作杀手级的数据仪表盘一文中得到了解决。这周我们专注于利用Google App Script来实现仪表盘数据的自动更新。...下面我们将创建updateGithubSheet方法,每当这个方法被调用时都会创建新的一行,该行的第一列会填充相应的时间。 function updateGithubSheet(){ ......步骤3:设置一个自动触发器来拉取数据 脚本的自动化可以通过一个触发器周期性地去执行改脚本来实现。...当设定触发器时,一定要注意API的请求速率限制——如果你设置的触发器访问过于频繁(比如每分钟执行一次),那么很可能会超出速率限制。

    8.7K60

    MCP的新特性——代码执行.

    导入工具,建立系统间连接通道; 第 5 行:从 Google Drive 读取文档,数据仅保留在执行环境的私有工作区中,全程不进入 LLM 处理; 第 8–11 行:指令 Salesforce 直接从执行环境获取并保存内容...设定监控边界,跟踪查找状态与尝试次数,设置 5 分钟超时保护; 第 8 行:启动循环,持续执行直至找到目标或达到超时; 第 9–13 行:获取指定 Slack 频道中最近 10 条消息; 第 15–17.../servers/salesforce'; const sheet =awaitgetSheet({ sheetId:'xyz789'}); console.log(`Found ${sheet.rows.length...这使得数据洞察的周期从以“周”为单位缩短至以“秒”为单位,彻底改变了内部数据分析的工作范式。 同样,在处理涉及多步操作的复杂ETL任务时,代码执行也展现出显著优势。...真正有效的模式是“渐进式形式化”——以灵活的方式开始,将稳定的部分逐步固化,并根据不同需求保留两种方式的优势。

    38810

    50. Python 数据处理(1)

    今天开始往后都,用python3来写脚本 1.csv数据处理 csv文件格式: 逗号分隔符(csv),有时也称为字符分隔值,因为分隔字符也可以不是逗号,其文件以纯文本的形式存储表格数据(数字和文本)。...csv文件由任意数目的记录组成,记录间以某种换行符分割;每条记录由字段组成,字段间的分隔符是其他字符或字符串,最常见的是逗号或制表符。通常,所有记录都有完全相同的字段序列。...="utf-8") as f:     for line in f.readlines():         print (line.split(",")) #以列表形式,打印每一行的数据。         ...#为样式创建字体 font = xlwt.Font() font.name = 'Times New Roman' #指定字体名称 font.bold = True #是否加粗 #设置样式的字体...://google.com', 'out1.pdf') 2.

    1.4K20

    EasyExcel实现对excel文件读写

    4.3 实现读操作   这类文章以前写过,不过好长时间没有碰了,就当复习了。   ...EasyExcel能大大减少占用内存的主要原因是在解析Excel时没有将文件数据一次性全部加载到内存中,而是从磁盘上一行行读取数据,逐个解析。...EasyExcel采用一行一行的解析模式,并将一行的解析结果以观察者的模式通知处理(AnalysisEventListener) EasyExcel是一个基于Java的简单、省内存的读写Excel的开源项目...4、EasyExcel读操作 4.1 创建实体类 这里加上index属性,index=0表示第一列,以此类推 @Data public class User { //设置表头名称 //设置列对应的属性...除了EasyExcel之外,POI操作Excel也是很常见的解决方案,POI的文章我以前也发过,去我主页搜就行。

    1K30

    好强的谷歌“Excel”,不用自己写代码就能爬虫,网友立马cue微软:慌不慌?

    一行代码也别写,第三方软件也甭安。 只需在表格里点几下就ok。 不信,你瞧: 就这么两下,网页上的商品信息都有了。 网友看完都惊呆了,码个不停。...一看到这是来自谷歌的产品(Google Sheet,谷歌的“Excel”),大家就立马cue起了微软,问它慌不慌。 还有人称这是在“跨界打击”它。...△ 扫盲:“巨硬”就是微软,网友给的调侃 好不热闹。 来看具体怎么实现。 详细步骤 以爬亚马逊某个手机产品的商品页为例。 我们先打开谷歌Sheet(网友版即可),新建一个文档。...然后copy一下要爬的网址,粘进去。 剩下的都在Sheet里完成。...要诀就是一个叫做ImportFromWeb的函数。 它也是个插件,没有的需要先安装一下(安装地址放文末了),然后通过Google Sheet程序的“扩展程序”菜单导入就行。

    92020
    领券