summaryrefslogtreecommitdiff
path: root/isort/format.py
diff options
context:
space:
mode:
Diffstat (limited to 'isort/format.py')
-rw-r--r--isort/format.py21
1 files changed, 21 insertions, 0 deletions
diff --git a/isort/format.py b/isort/format.py
new file mode 100644
index 00000000..0c76a143
--- /dev/null
+++ b/isort/format.py
@@ -0,0 +1,21 @@
+def format_simplified(import_line: str) -> str:
+ import_line = import_line.strip()
+ if import_line.startswith("from "):
+ import_line = import_line.replace("from ", "")
+ import_line = import_line.replace(" import ", ".")
+ elif import_line.startswith("import "):
+ import_line = import_line.replace("import ", "")
+
+ return import_line
+
+
+def format_natural(import_line: str) -> str:
+ import_line = import_line.strip()
+ if not import_line.startswith("from ") and not import_line.startswith("import "):
+ if "." not in import_line:
+ return "import {0}".format(import_line)
+ parts = import_line.split(".")
+ end = parts.pop(-1)
+ return "from {0} import {1}".format(".".join(parts), end)
+
+ return import_line