diff --git a/callouts/callouts.py b/callouts/callouts.py
index 76afb9e..abf42f5 100755
--- a/callouts/callouts.py
+++ b/callouts/callouts.py
@@ -1,9 +1,11 @@
 #!/usr/bin/env python3
 
-import os
-import yaml
-from mako.template import Template
 import argparse
+import os
+
+from mako.template import Template
+
+import yaml
 
 
 def main():
diff --git a/extensions/openpower-pels/registry/tools/process_registry.py b/extensions/openpower-pels/registry/tools/process_registry.py
index 229f551..c6a86f8 100755
--- a/extensions/openpower-pels/registry/tools/process_registry.py
+++ b/extensions/openpower-pels/registry/tools/process_registry.py
@@ -58,7 +58,6 @@
     """
 
     for entry in registry_json["PELs"]:
-
         # Don't check on "11" SRCs as those reason codes aren't supposed to
         # match the component ID.
         if entry["SRC"].get("Type", "") == "11":
@@ -124,7 +123,6 @@
         registry_json = json.load(registry_handle)
 
         if schema:
-
             import jsonschema
 
             with open(schema) as schema_handle:
@@ -146,7 +144,6 @@
 
 
 if __name__ == "__main__":
-
     parser = argparse.ArgumentParser(
         description="PEL message registry processor"
     )
@@ -177,7 +174,7 @@
         "--skip-schema-validation",
         action="store_true",
         dest="skip_schema",
-        help="Skip running schema validation. " "Only do the extra checks.",
+        help="Skip running schema validation. Only do the extra checks.",
     )
 
     args = parser.parse_args()
diff --git a/extensions/openpower-pels/setup.py b/extensions/openpower-pels/setup.py
index 8939146..98706f4 100644
--- a/extensions/openpower-pels/setup.py
+++ b/extensions/openpower-pels/setup.py
@@ -1,7 +1,8 @@
-from setuptools import setup
 import os
 import shutil
 
+from setuptools import setup
+
 # Builds the message registry and other data files into a python package
 
 # Copy the msg registry and comp IDs files into the subdir with
diff --git a/tools/elog-gen.py b/tools/elog-gen.py
index b969a82..2b7fc49 100755
--- a/tools/elog-gen.py
+++ b/tools/elog-gen.py
@@ -11,11 +11,13 @@
 yaml to generate the header file.
 """
 
-from mako.template import Template
-from optparse import OptionParser
-import yaml
-import sys
 import os
+import sys
+from optparse import OptionParser
+
+from mako.template import Template
+
+import yaml
 
 
 def order_inherited_errors(i_errors, i_parents):
@@ -223,7 +225,7 @@
                 % (str(error), i_elog_yaml)
             )
             exit(1)
-        fullname = i_namespace.replace("/", ".") + (".") + error["name"]
+        fullname = i_namespace.replace("/", ".") + "." + error["name"]
         errors.append(fullname)
 
         if "description" in error:
