diff --git a/doc/test_messages_documentation.py b/doc/test_messages_documentation.py
index f024e03..96d98ed 100644
--- a/doc/test_messages_documentation.py
+++ b/doc/test_messages_documentation.py
@@ -140,7 +140,7 @@
             line = match.group("line")
             if line is None:
                 lineno = i + 1
-            elif line.startswith("+") or line.startswith("-"):
+            elif line.startswith(("+", "-")):
                 lineno = i + 1 + int(line)
             else:
                 lineno = int(line)
diff --git a/pylint/checkers/base/name_checker/checker.py b/pylint/checkers/base/name_checker/checker.py
index 82ff725..f6e1df5 100644
--- a/pylint/checkers/base/name_checker/checker.py
+++ b/pylint/checkers/base/name_checker/checker.py
@@ -688,7 +688,7 @@
                 confidence=interfaces.INFERENCE,
             )
         elif variance == TypeVarVariance.invariant and (
-            name.endswith("_co") or name.endswith("_contra")
+            name.endswith(("_co", "_contra"))
         ):
             suggest_name = re.sub("_contra$|_co$", "", name)
             self.add_message(
diff --git a/pylint/checkers/similar.py b/pylint/checkers/similar.py
index 6f08bbc..6aa0f7c 100644
--- a/pylint/checkers/similar.py
+++ b/pylint/checkers/similar.py
@@ -647,10 +647,10 @@
         line = line.strip()
         if ignore_docstrings:
             if not docstring:
-                if line.startswith('"""') or line.startswith("'''"):
+                if line.startswith(('"""', "'''")):
                     docstring = line[:3]
                     line = line[3:]
-                elif line.startswith('r"""') or line.startswith("r'''"):
+                elif line.startswith(('r"""', "r'''")):
                     docstring = line[1:4]
                     line = line[4:]
             if docstring:
diff --git a/pylint/checkers/unicode.py b/pylint/checkers/unicode.py
index 30ae0af..deb8186 100644
--- a/pylint/checkers/unicode.py
+++ b/pylint/checkers/unicode.py
@@ -375,7 +375,7 @@
 
     @staticmethod
     def _is_invalid_codec(codec: str) -> bool:
-        return codec.startswith("utf-16") or codec.startswith("utf-32")
+        return codec.startswith(("utf-16", "utf-32"))
 
     @staticmethod
     def _is_unicode(codec: str) -> bool:
diff --git a/pylint/config/config_initialization.py b/pylint/config/config_initialization.py
index 6fa7b6b..a6ce13b 100644
--- a/pylint/config/config_initialization.py
+++ b/pylint/config/config_initialization.py
@@ -169,7 +169,7 @@
     all_action = ""
 
     for i, arg in enumerate(config_args):
-        if joined and (arg.startswith("--enable=") or arg.startswith("--disable=")):
+        if joined and (arg.startswith(("--enable=", "--disable="))):
             value = arg.split("=")[1]
         elif arg in {"--enable", "--disable"}:
             value = config_args[i + 1]
diff --git a/pylint/testutils/lint_module_test.py b/pylint/testutils/lint_module_test.py
index b578e31..48ee5a0 100644
--- a/pylint/testutils/lint_module_test.py
+++ b/pylint/testutils/lint_module_test.py
@@ -172,7 +172,7 @@
             line = match.group("line")
             if line is None:
                 lineno = i + 1
-            elif line.startswith("+") or line.startswith("-"):
+            elif line.startswith(("+", "-")):
                 lineno = i + 1 + int(line)
             else:
                 lineno = int(line)
diff --git a/pyproject.toml b/pyproject.toml
index 8de0d1f..32ef9dc 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -150,6 +150,7 @@
     "E",  # pycodestyle
     "F",  # pyflakes
     "I",  # isort
+    "PIE", # flake8-pie
     "PYI", # flake8-pyi
     "UP", # pyupgrade
     "RUF", # ruff
