gpt4 book ai didi

python xlwings - 复制和粘贴范围

转载 作者:太空狗 更新时间:2023-10-30 00:31:47 26 4
gpt4 key购买 nike

我在这个网站上的第一个问题。

我在 python 2.7 中使用 xlwings。我想将“A1:A6”范围内的值从 Sheet1 复制到 Sheet2 中的单元格“A1:A6”。我的代码如下:

> my_range = Range('Sheet1','A1:A6').value
>
> Range('Sheet2','A1:A6').value = my_range

但是,当我运行此代码时,它会将 my_range 的值放入工作表 2 中的单元格“A1:F1”中,而不是工作表 2 中的单元格“A1:A6”中。

最佳答案

列(以及行)作为简单(“水平”)列表返回,请参阅文档 here .为什么?首先,它模仿了 numpy 一维数组的行为。其次,它通常是你想要的,例如您可以直接遍历列或检查值是否存在,而无需先解压缩嵌套列表。

现在,在您的情况下,您显然希望保留您可以执行的 2d 形状(再次类似于 numpy),如下所示:

my_values = Range('Sheet1','A1:A6', atleast_2d=True).value 
Range('Sheet2','A1:A6').value = my_values

另请注意,您所说的 my_range 应该称为 my_values,因为它包含一个列表,而不是 xlwings Range 对象。

更新:

自 v0.9.0 起,语法更改为:

import xlwings as xw
wb = xw.Book('mybook.xlxs')
my_values = wb.sheets['Sheet1'].range('A1:A6').options(ndim=2).value
wb.sheets['Sheet2'].range('A1:A6').value = my_values

关于python xlwings - 复制和粘贴范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30941411/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com