diff --git a/jeepyb/cmd/openstackwatch.py b/jeepyb/cmd/openstackwatch.py
index 945674d..47add37 100644
--- a/jeepyb/cmd/openstackwatch.py
+++ b/jeepyb/cmd/openstackwatch.py
@@ -52,7 +52,7 @@
                                  section)
     if config.has_option(section, option):
         return config.get(section, option)
-    elif not default is None:
+    elif default is not None:
         return default
     else:
         raise ConfigurationError("Invalid configuration, missing "
@@ -105,7 +105,7 @@
             json_row = json.loads(row)
         except(ValueError):
             continue
-        if not json_row or not 'project' in json_row or \
+        if not json_row or 'project' not in json_row or \
                 json_row['project'] not in CONFIG['projects']:
             continue
         yield json_row
diff --git a/jeepyb/cmd/trivial_rebase.py b/jeepyb/cmd/trivial_rebase.py
index 184ceb3..19e192b 100644
--- a/jeepyb/cmd/trivial_rebase.py
+++ b/jeepyb/cmd/trivial_rebase.py
@@ -113,7 +113,7 @@
                  "patch_sets.change_id = changes.change_id AND "
                  "patch_sets.patch_set_id = %s AND "
                  "changes.change_key = \'%s\'\"" % ((options.patchset - 1),
-                 options.changeId))
+                                                    options.changeId))
     revisions = GsqlQuery(sql_query, options)
 
     json_dict = json.loads(revisions[0], strict=False)
@@ -262,7 +262,7 @@
             approve_category = '--code-review'
         elif approval["category_id"] == "VRIF":
             # Don't re-add verifies
-            #approve_category = '--verified'
+            # approve_category = '--verified'
             continue
         elif approval["category_id"] == "SUBM":
             # We don't care about previous submit attempts
diff --git a/jeepyb/cmd/update_blueprint.py b/jeepyb/cmd/update_blueprint.py
index 0d2d729..9e1f1ca 100644
--- a/jeepyb/cmd/update_blueprint.py
+++ b/jeepyb/cmd/update_blueprint.py
@@ -132,7 +132,7 @@
 def main():
     parser = argparse.ArgumentParser()
     parser.add_argument('hook')
-    #common
+    # common
     parser.add_argument('--change', default=None)
     parser.add_argument('--change-url', default=None)
     parser.add_argument('--project', default=None)
@@ -140,7 +140,7 @@
     parser.add_argument('--commit', default=None)
     parser.add_argument('--topic', default=None)
     parser.add_argument('--change-owner', default=None)
-    #change-merged
+    # change-merged
     parser.add_argument('--submitter', default=None)
     # patchset-created
     parser.add_argument('--uploader', default=None)
