Лучше сказать
```python
u = queue.popleft()
for v in neighbours[u]:
    ...
```
чем сначала итерироваться по queue[0], а потом делать popleft