Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在范围内指定多个值_Python_Excel_Openpyxl - Fatal编程技术网

Python 在范围内指定多个值

Python 在范围内指定多个值,python,excel,openpyxl,Python,Excel,Openpyxl,在VBA中,我可以将数组指定给单元格区域,以便区域中的每个单元格都从数组中获得相应的值: Range("A1:D1").Value = Array(1, 2, 3, 4) 我也尝试着用openpyxl做同样的事情: import openpyxl wb = openpyxl.Workbook() ws = wb.worksheets[0] ws.range['A1:D1'].value = [1, 2, 3, 4] 但是没有成功 有没有一种方法可以在不迭代每个单元格的情况下使用openpy

在VBA中,我可以将数组指定给单元格区域,以便区域中的每个单元格都从数组中获得相应的值:

Range("A1:D1").Value = Array(1, 2, 3, 4)
我也尝试着用openpyxl做同样的事情:

import openpyxl

wb = openpyxl.Workbook()
ws = wb.worksheets[0]
ws.range['A1:D1'].value = [1, 2, 3, 4]
但是没有成功


有没有一种方法可以在不迭代每个单元格的情况下使用openpyxl进行范围赋值?

不,这是不可能的,openpyxl中的范围只是一个单元格范围,但循环非常简单(openpyxl 1.8语法)


这仍然是建议的语法吗(使用2.3-2.4)?是的:1.8引入了使用切片获取一系列单元格的功能。
range
方法已被弃用。
for v,c in zip([1, 2, 3, 4], ws['A1':'D1']):
     c.value = v