Is it possible to automate PCB layout adjustments for design iterations using Python in KiCad?
Yes, it's possible to automate PCB layout adjustments for design iterations using Python in KiCad. The provided script exemplifies this by finding and repositioning specific footprints on the board:

```python
import pcbnew
from pcbnew import wxPoint, wxPointMM

# Get reference to footprint objects
board = pcbnew.GetBoard()
r1 = board.FindFootprintByReference('R1')
r2 = board.FindFootprintByReference('R2')
d1 = board.FindFootprintByReference('D1')
assert(r1 and r2 and d1)

# Place footprints
r1.SetPosition(wxPointMM(20, 20))    # Adjust position of R1
r2.SetPosition(wxPointMM(25, 21))    # Adjust position of R2
d1.SetPosition(wxPointMM(23, 26))    # Adjust position of D1

# Update display
pcbnew.Refresh()
```

This script is useful for quickly iterating PCB designs by programmatically adjusting the positions of components, facilitating rapid prototyping and layout optimization.