xlwings同时支持对Excel文件的读和写,在操作时十分方便。笔者主要使用xlwings进行游戏开发中策划数据表的读取、分析、处理和维护工作。
在PyCharm的Terminal窗口输入(也可以直接在命令行输入)
pip install xlwings
可以参考xlwings的官方文档:xlwings Documentation
import xlwings as xw
if __name__ == '__main__':
app = xw.App(visible=False, add_book=False)
TestInWB = app.books.open("TestIn.xlsx") # 打开TestIn.xlsx文件
TestInSheet = TestInWB.sheets[0] # 读取第一个子页到TestInSheet
TestInSheet2 = TestInWB.sheets["Sheet1"] # 读取Sheet1的子页到TestInSheet2
A1Value = TestInSheet.range("A1").value # 读取第一个单元格的值
FirstLineValue = TestInSheet.range("A1").expand("right").value # 读取第一行的值
FirstColValue = TestInSheet.range("A1").expand("down").value # 读取第一列的值
BlockValue = TestInSheet.range((1,1),(3,3)).expand("table").value # 读取第1行第1列到第3行第3列的数值块的值
# 中间可以加入任意对于读取数值的处理,然后再输出到输出文件中。
# 这里假设直接将块数据写入到输出文件中。
TestOutWB = app.books.open("TestOut.xlsx")
TestOutSheet = TestOutWB.sheets[0]
TestOutSheet.range("A1").value = BlockValue
TestInWB.close()
TestOutWB.save()
TestOutWB.close()
app.quit()