
- Python Basic Tutorial
- Python - Home
- Python - Overview
- Python - Environment Setup
- Python - Basic Syntax
- Python - Comments
- Python - Variables
- Python - Data Types
- Python - Operators
- Python - Decision Making
- Python - Loops
- Python - Numbers
- Python - Strings
- Python - Lists
- Python - Tuples
- Python - Dictionary
- Python - Date & Time
- Python - Functions
- Python - Modules
- Python - Files I/O
- Python - Exceptions
Python Coding Style Guide
In this tutorial, we are going to learn about the standard style guide that should follow in a Python project. Following a standard style guide of any programming language will keep all team members at the same pace. Moreover, it looks professional.
For Python, most of the users follow PEP 8 style guide. The code looks pretty and more readable. You can find the full list of style guide here. We are presenting the curated list of a style guide in this article.
Use a tab for indentation
Using a tab for indentation in the code make code more readable instead of using random spaces for multiple functions and methods. You can set the number of spaces for a tab in any code editors' settings.
You can see some examples below.
# example def sample(random): # statement 1 # statement 2 # ... return random
Pythons' default UTF-8 or ASCII encoding
Using Pythons' default UTF-8 or ASCII encoding is the best practice for international environments.
Trailing comma in tuples
Using a trailing comma in the tuples is one of the best practices. But, it's not mandatory.
# example tup = (1, 2, 3,)
Using docstrings
Use docstring in the functions and classes. We can use the triple quotes for the docstrings. See some examples below.
def sample(): """This is a function""" """ This is a function """ class Smaple: """This is a class""" """ This is a class """
Don't write more than 79 characters in a line
Writing more than 79 characters in a line is not recommended in PEP 8 style guide. Avoid this by breaking the line into multiple lines using the escape character (). See the example below.
# example def evaluate(a, b, c, d): return (2 ** (a + b) / (c // d) ** d + a - d * b) \ - (3 ** (a + b) / (c // d) ** d + a - d * b)
Using spaces
It's one of the best practices to use a space before and after an operator. Use a space after the comma as well for more readability.
# example import random result = random.randint(1, 3) + random.randint(1, 2)
Naming Variables, Constants, Classes and Functions
Follow the same case for variables, constants, classes and functions across the program. Most of the Python users will use snake_case for functions and variables naming and PascalCase for classes naming. For constants, use all uppercase letter separated with underscores (ex:- PI_TWO).
snake_case => this_is_function
PascalCase => ThisIsClass
CONSTANT => THIS_IS_CONSTANT
Importing one module at a time
Don't try to import multiple modules in a single even though it is syntactically correct. See the example below.
# don't import math, random # do import math import random
Comment updating
Always keep your comments up to date. Don't forget to update the comments while updating code. It's one of the most important things in coding. And most of the user will forget it. Keep this in mind.
Character that shouldn't be used as variable names singly
We have some characters that shouldn't be used as variable names lonely. And they are I (uppercase i), and l (lowercase L) as they look similar to the roman letters.
Don't use ASCII characters in identifiers
Using ASCII characters in identifiers is not at all a good practice. Avoid using them.
- Related Articles
- Coding standards (style guide) for Python programs?
- Python Tricks for Competitive Coding
- What are Python coding standards/best practices?
- Difference between Outpatient Coding and Inpatient Coding
- Why is python best suited for Competitive Coding
- Difference Between Huffman Coding and Shannon Fano Coding
- Huffman Coding
- Huffman Coding Algorithm
- Getting started with coding
- Python Logging Basics - Simple Guide
- Efficient Huffman Coding for Sorted Input
- What is physical layer coding violation?
- POSIX Style TTY control using Python
- Add style to Python tkinter button
- What is the difference between old style and new style classes in Python?
