公式:kWh = hourlylist * wattlist/1000
我的两个列表:
wattlist = [3500.0, 250.0, 2150.0, 2000.0, 60.0, 2790.0, 350.0, 80.0, 75.0, 1800.0] #each index #represents a different device in watt(10 devices)
hourlylist = [[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 1.0, 1.0], [0.0, 0.5, 0.5, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [1.0, 1.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 0.0, 1.0, 1.0], [1.0, 1.0, 1.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 1.0], [0.0, 0.0, 0.0, 0.0, 0.075, 0.075, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]] #each of the smaller #list represents each devives hourly usuage over 12 hours (10 smaller list within 1 big list)
如果我希望我的输出仍保持小时列表格式,但在我#使用计算千瓦时的公式后,我的代码应该如何看待
我尝试过:
for i in range (len(hourlylist)):
for j in range(len(hourlylist[i])):
for k in range(len(wattlist)):
hourlylist[i][j] = float(hourlylist[i][j]) * wattlist[k]/1000
print(hourlylist)
但是它给了我:
计算不累加...
我认为应该首先遍历功率表。然后一瓦(设备)每小时映射一次。尝试下面的代码:
for i, watt in enumerate(wattlist):
# each watt map an hourly
hourly = hourlylist[i]
for j, hour in enumerate(hourly):
hourly[j] = float(hour * watt) / 1000
print(hourlylist)
结果看起来像:
[[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 2.15, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 2.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.06, 0.06, 0.06, 0.06, 0.06], [0.0, 1.395, 1.395, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.35, 0.35, 0.35, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.08, 0.08, 0.08, 0.08, 0.08, 0.08, 0.08, 0.08, 0.08, 0.0, 0.08, 0.08], [0.075, 0.075, 0.075, 0.075, 0.0, 0.0, 0.0, 0.0, 0.075, 0.075, 0.075, 0.075], [0.0, 0.0, 0.0, 0.0, 0.135, 0.135, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]]