【发布时间】:2021-06-04 10:34:42
【问题描述】:
我目前创建了以下代码以进入 Excel 工作表,并根据 Excel 工作表中的两列和我的代码中的两个变量创建两个新列。
现在我希望能够遍历包含这两个变量的元组列表,并在 Excel 工作表中创建多个新列。所以 waypointLat 和 waypointLon 将在一个像 ((51.454, -2.123), (51.555,-2.377), .....)这样的元组中
我真的有两个问题 1/ 这是最好的方法吗?我应该将数据加载为数据框吗? 2/ 如果在excel文件中可行,我如何遍历列?
谢谢,
waypointLat = '51.364718'
waypointLong = '-0.2507693'
wb = openpyxl.load_workbook(r'Desktop\Python Projects\Work - Transport Movement\CurrentYodelTransportLocations.xlsx')
ws1 = wb.active
last_row = 2200 # Enter last row of excel workbook here
for i in range(2, last_row):
cell = "V" + str(i)
cell2 = "W" + str(i)
latitude = "N" + str(i)
longitude = "O" + str(i)
ws1[cell] = '=(((ACOS(SIN((' + latitude + '*PI()/180)) * SIN((' + waypointLat + '*PI()/180))+COS((' + latitude + '*PI()/180)) * COS((' + waypointLat + '*PI()/180)) * COS(((' + longitude + ' - ' + waypointLong + ')*PI()/180))))*180/PI())*60*1.1515*1.609344)'
ws1[cell2] = '=IF(' + cell +'<=8,"Yes","No")'
wb.save(r'Desktop\Python Projects\Work - Transport Movement\CurrentYodelTransportLocationsAmended.xlsx')
【问题讨论】:
-
我建议将文件加载到数据框中,对其执行操作,然后再次将其保存为 excel。