如何在aspose-cells-python 中写入一个二维数组
data = [
[“Name”, “Age”, “Gender”],
[“Alice”, 30, “Female”],
[“Bob”, 25, “Male”],
[“Charlie”, 35, “Male”]
]
我使用sheet.cells.import_array_list(data_, 0, 0, False)写入没有符合预期, 如图附件
image.png (4.3 KB)
我想知道sheet.cells.import_array_list的正确用法写入python的原生二维数组
, 逐个写入效率太低了
另外cells.get()和cells.get_cell()的区别是啥
@zengweiyu
Cells.get():如果这个单元个对象没有被创建, 创建并返回。
cells.get_cell() : 如果这个单元格对象没有被创建,那么返回空,用来做读入操作!这个方法已经被过期了,请使用 cells.Check_cell()
@zengweiyu
这几个方法都不能导入嵌套的List, 我们已经建了一个问题单:CELLSPYTHONNET-243.
目前请参考导入Numpy的方法,逐个导入。
顺便说一下,即使是我们内部导入, 我们也是逐个导入。
@zengweiyu
目前,您也可以参考以下代码实现您的需求。
import pandas as pd
import aspose.cells
from aspose.cells import Workbook
# 创建一个示例的 Pandas DataFrame
data = {'Name': ['Alice', 'Bob', 'Charlie'],
'Age': [25, 30, 35],
'Gender': ['Female', 'Male', 'Female']}
df = pd.DataFrame(data)
# 创建一个新的工作簿
workbook = Workbook()
worksheet = workbook.worksheets[0]
# 将 DataFrame 数据直接写入到工作表
for row_idx, row in df.iterrows():
for col_idx, value in enumerate(row):
worksheet.cells.get(row_idx + 1, col_idx).value = value # 行号 + 1 以跳过标题行
# 设置标题行
for col_idx, column in enumerate(df.columns):
worksheet.cells.get(0, col_idx).value = column # 第一行设置列标题
# 保存文件
workbook.save("output.xlsx")