python xlsxwriter 怎么用
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python xlsxwriter 怎么用相关的知识,希望对你有一定的参考价值。
参考技术A [python] view plain copy</pre>网上已经有很多朋友 描述了 xlsxwriter 模块的基本用法。 插入一些数据,根据数据绘图等,楼主这里就不重复这些了,要说的就是网上一些非基本方法,这些方法也是我看英文文档一点点找的,相对不容易。毕竟楼主是连 4级都没有过的人。<p></p><p></p><pre name="code" class="python">workbook = xlsxwriter.Workbook('excel.xlsx') #创建一个文件
[python] view plain copy
<pre name="code" class="python">worksheet_1 = workbook.add_worksheet('sheet1') #文件里创建第一个工作表
[python] view plain copy
worksheet_2 = workbook.add_worksheet('sheet2') #文件里创建第二个工作表
format = workbook.add_format()#创建单元格格式,字典里可以写一些参数
[python] view plain copy
#一种方法可以直接在字典里 设置属性
[python] view plain copy
'bold': True, #字体加粗
'border':1, #单元格边框宽度
'align': 'center',
'valign': 'vcenter',
'fg_color': '#F4B084',#单元格背景颜色
[python] view plain copy
使用 python-xlsxwriter 或 bash 打开受密码保护的 ods 文件
【中文标题】使用 python-xlsxwriter 或 bash 打开受密码保护的 ods 文件【英文标题】:Open password-protected ods file with python-xlswriter or bash 【发布时间】:2019-11-05 06:44:54 【问题描述】:我需要一个代码来通过 python3(首选)或 bash 打开电子表格,我给他们密码并阅读它们。
我尝试通过 python-module "xlswriter"
我用这种方法保护 xlsx:
import xlsxwriter
workbook = xlsxwriter.Workbook('for-test-password.xlsx')
worksheet = workbook.add_worksheet()
content = (
['Gas', 10],
['Gasoline', 20],
['Potro', 30],
['Other',40],
)
row = 0
col = 0
for item, cost in (content):
worksheet.write(row, col, item)
worksheet.write(row, col + 1, cost)
row += 1
worksheet.protect('Passwd')
或尝试在 bash-script 中使用此代码
LibreOffice -p password -f xlsx for-test-password.xlsx
但这不会返回电子表格中的数据。
【问题讨论】:
发布你的代码,如果你尝试过的话。 我编辑问题并插入代码 问题的标题与问题的正文和示例完全不同。一个是关于读取/打开/解密 --- 而另一个是关于写入/保存/加密。 【参考方案1】:我用这种方法保护 xlsx:
worksheet.protect('Passwd')
这不是保护工作簿的密码。它正在保护工作表。 XlsxWriter 不支持密码保护工作簿/xlsx 文件。
来自XlsxWriter docs on protect():
注意
Excel 中的工作表级密码提供非常薄弱的保护。它们不会加密您的数据,并且很容易停用。 XlsxWriter 不支持完整的工作簿加密,因为它需要完全不同的文件格式,并且需要几个月的时间来实施。
【讨论】:
问题是(AFAIK)在 XlsxWriter 中需要大量工作才能支持不同的文件格式才能启用加密。【参考方案2】:You missed the workbook.close()
找到代码。
import xlsxwriter
workbook = xlsxwriter.Workbook('for-test-password.xlsx')
worksheet = workbook.add_worksheet()
content = (['Gas', 10],['Gasoline', 20],['Potro', 30],['Other',40],)
row = 0
col = 0
for item, cost in (content):
worksheet.write(row, col, item)
worksheet.write(row, col + 1, cost)
row += 1
worksheet.protect('Passwd')
workbook.close()
注意:以上代码在 python2.7 中运行良好
要在终端/bash 中打开受密码保护的密码,您需要一个模块,该模块位于 here
受保护的工作表及其属性可以在here找到
【讨论】:
不,这不起作用,因为我需要打开受此程序保护的工作表,即我需要通过“密码”打开第一个文档,然后对其进行编辑,最后使用“密码”设置密码 您的问题不清楚。您编写的代码是打开一个新文件并添加内容并为工作表设置密码。就这样。如果您需要打开具有密码的现有文件,您必须重写代码以打开文件并更改密码(模块'xlrd')。 是的,这是我的想法,你说我必须使用“xlrd”来打开受保护的 xlsx 文件?没有办法用“xlsxwriter”打开?以上是关于python xlsxwriter 怎么用的主要内容,如果未能解决你的问题,请参考以下文章