как оптимизировать in?
Как оптимизировать эту часть кода?
for block in blocks:
if d:
block[1][0] -= 4
upd.append([block[1][0], block[1][1]+math.sin(j/57.2958)*40, 32, 32])
if a:
block[1][0] += 4
upd.append([block[1][0], block[1][1]+math.sin(j/57.2958)*40, 32, 32])
if block[1][0] > 1280:
block[1][0] -= 1312
if block[1][0] < -32:
block[1][0] += 1312
#больше всего производительности сжирает часть кода от сюда:
if block[0][0] == grass and([[grass, grass1, grass2, grass3], [block[1][0], block[1][1]-32]] in blocks or [[dirt, dirt1, dirt2, dirt3], [block[1][0], block[1][1]-32]] in blocks):
block[0] = [dirt, dirt1, dirt2, dirt3]
if block[0][0] == dirt and not ([[grass, grass1, grass2, grass3], [block[1][0], block[1][1]-32]] in blocks or [[dirt, dirt1, dirt2, dirt3], [block[1][0], block[1][1]-32]] in blocks):
block[0] = [grass, grass1, grass2, grass3]
#до сюда
Я изучил и понял: именно проблема в in. Как оптимизировать это?