我正在开发一个项目,需要迭代并比较大量数据集中的大量值。下面的示例代码 - 显示了我对2个数据集的思考 - 而且速度有点慢。我想知道是否有更好的模式来进行我应该使用的这种比较。我的下面的代码显示了2组数据,但是想象有10组,我需要迭代并比较数据集1的请求与数据集2的出价,然后询问数据集2和数据集1的出价。现在使用10个数据集复杂化不是2.这就是为什么我想就这方面的最佳模式提出一些建议。
j1 = json.loads(r1) # json response contains MANY values for ASKS and BIDS
j2 = json.loads(r2) # json response, contains MANY values for ASKS and BIDS
for ask, aval in j1['eth_btc']['asks']:
for bid, bval in j2['eth_btc']['bids']:
if ask < bid:
if aval <= bval:
# do some stuff!
# now do the reverse - ASK from J2 and BID from J1
for ask, aval in j2['eth_btc']['asks']:
for bid, bval in j1['eth_btc']['bids']:
if ask < bid:
if aval <= bval:
# do some different stuff!
感谢您提供的任何帮助。
答案 0 :(得分:0)
我继续对此进行调查,并且遇到了一种方法(我没有费心将变量名更新为简短的):
from itertools import zip_longest
for x, y in zip_longest(xpts, ypts):
print(x,y)
这为我带来了巨大的性能提升。如果有人知道另一种更有效的模式,请告诉我。