Depending on how much you want to customize each of the 3 flows, you could reduce your code to something like:

```
flows = []
for n, tuple_ in enumerate([(port1, ofp.OFPFF_NO_PKT_COUNTS), (port2, ...), (port3, ...)]):
    port, flags = tuple_
    offset = n + 1
    flow = ofp.message.flow_add( <use port, flags and offset> )
    flows.append(flow)
```