To make your Python code Pythonic, you should follow 2 coding style guidelines: PEP 8 and PEP 20. Let’s dive into them now!
PEP 8
- PEP 8 is about guidelines for
- Code layout
- Whitespace
- Naming conventions
- Other similar style topics
- Take the following example, a file
pythonic.py
- To check PEP8, you can use
pycodestyle
tool in command line
- To do PEP8 code automatic reformatting, you can use autopep8
PEP 20
Beautiful is better than ugly
Explicit is better than implicit
Simple is better than complex
Complex is better than complicated
Flat is better than nested
Sparse is better than dense
Readability counts
Special cases aren’t special enough to break the rules
Although practicality beats purity
Errors should never pass silently
Unless explicitly silenced
- Error is passed siliently
- Error is handled and logged
In the face of ambiguity, refuse the temptation to guess
There should be one, and preferably only one way to do it
Although that way may not be obvious at first unless you’re Dutch
Now is better than never
Although never is often better than right now
If the implementation is hard to explain, it’s a bad idea
If the implementation is easy to explain, it may be a good idea
Namespaces are one honking great idea – let’s do more of those!
There should be 20 guidelines for PEP 20, but you can see that there are just 19 of them, the 20th guideline is up to you to define!