too many spaces after `print`, but construct a list to get a better overview (this looks messy to me):

```python
lines = [
    "('%(modulename)s', '%(version)s', {"
    "    'source_tmpl': '%(tarball)s',",
    "    'source_urls': ['%(url)s'],",
    "}),",
]
txt = '\n'.join(lines) % data
print txt
```