You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Python为Excel文件设置写保护密码并允许只读访问?

如何用Python为Excel文件设置写保护密码并允许只读访问?

嗨,我来帮你搞定这个问题!你当前用的read_only_recommended()其实只是给Excel加了个「建议只读」的打开提示——用户完全可以点「启用编辑」绕过这个限制,没法真正阻止他人修改文件。

要实现无密码可只读访问,修改必须输入密码的效果,咱们可以直接用XlsxWriter自带的set_password()方法,这才是真正的写保护密码设置。修改你的代码就行:

import pandas as pd

# 这里假设你的df4是已经准备好的DataFrame
with pd.ExcelWriter("asd.xlsx", engine="xlsxwriter") as excel_writer:
    df4.to_excel(excel_writer, index=False, sheet_name="Sheet1")
    
    # 设置修改权限密码:用户可无密码打开只读,编辑保存需输入此密码
    excel_writer.book.set_password("your_custom_password")
    
    # 可选:保留只读推荐提示,让用户打开时更明确可选模式
    excel_writer.book.read_only_recommended()

关键说明:

  • set_password()这里设置的是修改权限密码,不是打开密码——用户打开文件时可以自由选择「只读」模式,无需输入密码;只有想要编辑并保存时,才会要求输入正确密码。
  • 密码是区分大小写的,设置时要注意字符的大小写细节
  • 这个功能是XlsxWriter原生支持的,不需要额外安装其他库

如果你之后需要切换到其他Excel引擎(比如openpyxl),也能实现类似效果,但基于你当前的代码,用XlsxWriter的方案是最直接的。

备注:内容来源于stack exchange,提问作者macikeci

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.21 15:59:52