What is Python Coding Style (PEP8)? #

Python Coding Style, also known as PEP8 (Python Enhancement Proposal 8), is a set of guidelines and conventions for writing Python code in a consistent and readable manner. PEP8 is widely adopted and followed by the Python community, including library developers, open-source contributors, and professional Python programmers.

Following PEP8 not only improves the readability of code but also makes it easier to maintain, collaborate on, and understand by others. Consistent coding style helps in reducing syntax errors, debugging time, and overall code quality.

Manual Implementation of PEP8 Guidelines #

Here are some key aspects of PEP8 and how you can manually implement them in your Python code:

Indentation: #

  • Use four spaces for each level of indentation. Avoid using tabs, as they can cause inconsistencies across different text editors.

Line Length: #

  • Keep the length of each line below 79 characters. If a line exceeds this limit, break it into multiple lines using parentheses or backslashes.
  • Exception: Import statements can be lengthened up to multiple lines if necessary.

Blank Lines: #

  • Use two blank lines to separate top-level functions and classes.
  • Use one blank line to separate method definitions and inside function bodies.

Imports: #

  • Place all import statements at the top of your module, immediately below the module's documentation.
  • Organize imports in the following order:
    1. Standard library imports
    2. Third-party package imports
    3. Local application-specific imports

Naming Conventions: #

  • Use lowercase letters with words separated by underscores for variable and function names (e.g., my_variable, calculate_average()).
  • Use CapWords (also known as PascalCase) for class names (e.g., MyClass).

Comments: #

  • Use inline comments sparingly and keep them brief and to the point.
  • Use docstrings to document functions, classes, and modules in detail.

Other Guidelines: #

  • Avoid using single-letter variable names, unless they are being used as loop counters.
  • Ensure consistent spacing around operators and after commas.
  • Always surround binary operators with whitespace.
  • Avoid trailing whitespace at the end of lines.

Note that these are just a few key points from PEP8. The official PEP8 documentation provides a more comprehensive set of guidelines, and it's highly recommended to read through it for a complete understanding.

PEP8 Compliance in Google Apps Script #

While PEP8 is specific to Python, it's still important to follow a consistent coding style in other programming languages. In the case of Google Apps Script, there isn't a direct equivalent to PEP8, but you can still apply some of the principles.

Here's an example of how you can achieve a similar coding style in Google Apps Script:

Indentation: #

  • Use two spaces for each level of indentation, since Google Apps Script does not allow customization of the indentation style.

Line Length: #

  • Keep the length of each line below 100 characters to improve readability.

Blank Lines: #

  • Use one blank line to separate top-level functions and inside function bodies.

Naming Conventions: #

  • Use lowerCamelCase for variable and function names (e.g., myVariable, calculateAverage()).
  • Use UpperCamelCase for class names (e.g., MyClass).

Comments: #

  • Use inline comments sparingly and keep them brief.
  • Use block comments to provide descriptions or explanations when necessary.

These guidelines help improve the readability and maintainability of your Google Apps Script code, making it easier for you, your team, and future developers to understand and modify the code.

Use Case Examples: #

Example 1: Python Code #

def calculate_average(scores):
total = sum(scores)
length = len(scores)
average = total / length
return average

def print_student_info(name, age, average_score):
print(f"Name: {name}")
print(f"Age: {age}")
print(f"Average Score: {average_score:.2f}")

name = "John Doe"
age = 20
scores = [85, 90, 95, 87, 92]

average_score = calculate_average(scores)
print_student_info(name, age, average_score)

Example 2: Google Apps Script Code #

function calculateAverage(scores) {
var total = scores.reduce(function(a, b) {
return a + b;
}, 0);
var length = scores.length;
var average = total / length;
return average;

function printStudentInfo(name, age, averageScore) {
Logger.log("Name: " + name);
Logger.log("Age: " + age);
Logger.log("Average Score: " + averageScore.toFixed(2));

var name = "John Doe";
var age = 20;
var scores = [85, 90, 95, 87, 92];

var averageScore = calculateAverage(scores);
printStudentInfo(name, age, averageScore);

In both examples, the code follows the respective coding style guidelines (PEP8 for Python and the adapted guidelines for Google Apps Script). This makes the code more readable and easier to understand and modify.

By adhering to coding style guidelines, you create code that is consistent, maintainable, and easily shareable, enhancing the overall development experience.

Read next: