I've wondered why using a dictionary to initialize <i>setuptools.setup()</i> isn't more advocated in such guides. I understand this is superficial, but imho, this looks much clearer than the author's suggestion [1]:<p><pre><code> from setuptools import setup
kw = {
'name' : 'funniest',
'version' : '0.1',
'description' : 'The funniest joke in the world',
'url' : 'http://github.com/storborg/funniest',
'author' : 'Flying Circus',
'author_email' : 'flyingcircus@example.com',
'license' : 'MIT',
'packages' : ['funniest'],
'zip_safe' : False,
}
if __name__ == '__main__':
setup(**kw)
</code></pre>
Here are a few of my <i>setup.py</i> files that follow this convention [2] [3] [4].<p>[1]: <a href="http://www.scotttorborg.com/python-packaging/minimal.html#creating-the-scaffolding" rel="nofollow">http://www.scotttorborg.com/python-packaging/minimal.html#cr...</a><p>[2]: <a href="https://github.com/gvalkov/harstats-graphite/blob/master/setup.py" rel="nofollow">https://github.com/gvalkov/harstats-graphite/blob/master/set...</a><p>[3]: <a href="https://github.com/gvalkov/jenkins-autojobs/blob/master/setup.py" rel="nofollow">https://github.com/gvalkov/jenkins-autojobs/blob/master/setu...</a><p>[4]: <a href="https://github.com/gvalkov/python-evdev/blob/master/setup.py" rel="nofollow">https://github.com/gvalkov/python-evdev/blob/master/setup.py</a>