diff options
Diffstat (limited to 'isort/format.py')
-rw-r--r-- | isort/format.py | 21 |
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 |