classify-imports

4.2.0 · active · verified Thu Apr 16

classify-imports is a Python utility library designed for refactoring imports in Python-like syntax. It provides tools to parse import statements, classify them into categories (e.g., built-in, third-party, application), and sort them according to defined rules. The library is currently at version 4.2.0 and is actively maintained with a focus on import organization.

Common errors

Warnings

Install

Imports

Quickstart

This quickstart demonstrates the core functionalities of `classify-imports`: parsing a single import string into multiple, sorting a list of import objects into classified blocks, and determining the classification type of a module name. The `sort` function will arrange imports into 'FUTURE', 'BUILTIN', 'THIRD_PARTY', and 'APPLICATION' categories by default.

from classify_imports import import_obj_from_str, sort, classify_base, Classified
import pprint

# Example 1: Splitting an import object
obj = import_obj_from_str('import foo, bar, baz')
split_imports = [str(i) for i in obj.split()]
print('Split Imports:')
print(split_imports)

# Example 2: Sorting and partitioning import objects
imports_to_sort = [
    import_obj_from_str('from classify_imports import sort'),
    import_obj_from_str('import sys'),
    import_obj_from_str('from pyramid.view import view_config'),
    import_obj_from_str('import cached_property'),
]

partitioned = sort(imports_to_sort)
print('\nSorted and Partitioned Imports:')
pprint.pprint(partitioned)

# Example 3: Classifying a module
print('\nModule Classification:')
print(f"'__future__' is: {classify_base('__future__')}")
print(f"'classify_imports' is: {classify_base('classify_imports')}")
print(f"'pyramid' is: {classify_base('pyramid')}")
print(f"'os' is: {classify_base('os')}")
print(f"Order of classifications: {Classified.order}")

view raw JSON →