簡體   English   中英

如何使用 isort 按模塊保留分組導入以進行重命名導入?

[英]How can I keep grouped imports by module with isort for renamed imports?

我有以下導入:

from PyPDF2.constants import (
    CatalogAttributes as CA,
    Core as CO,
    DocumentInformationAttributes as DI,
    EncryptionDictAttributes as ED,
    PageAttributes as PG,
    PagesAttributes as PA,
    StreamAttributes as SA,
    TrailerKeys as TK,
    CatalogDictionary as CD,
)

我想使用 isort 並且我想保持垂直懸掛縮進 它適用於所有其他導入,但這個總是被轉換為:

from PyPDF2.constants import CatalogAttributes as CA
from PyPDF2.constants import CatalogDictionary as CD
from PyPDF2.constants import Core as CO
from PyPDF2.constants import DocumentInformationAttributes as DI
from PyPDF2.constants import EncryptionDictAttributes as ED
from PyPDF2.constants import PageAttributes as PG
from PyPDF2.constants import PagesAttributes as PA
from PyPDF2.constants import StreamAttributes as SA
from PyPDF2.constants import TrailerKeys as TK

我怎樣才能讓 isort 按導入它的模塊保持/強制執行此分組? 為什么它甚至在我給定的配置下這樣做?

這是我的.isort.cfg

[settings]
line_length=79
indent='    '
multi_line_output=3
length_sort=0
include_trailing_comma=True

似乎您需要一個選項:

combine_as_imports = true

我的 .toml 配置看起來像:

[tool.isort]
multi_line_output = 3
combine_as_imports = true
include_trailing_comma = false

force_grid_wrap = 2

use_parentheses = true
ensure_newline_before_comments = true
line_length = 110
indent = 4
atomic = true
case_sensitive = false
balanced_wrapping = false

為您的代碼應用的 isort 的結果是:

from PyPDF2.constants import (
    CatalogAttributes as CA,
    CatalogDictionary as CD,
    Core as CO,
    DocumentInformationAttributes as DI,
    EncryptionDictAttributes as ED,
    PageAttributes as PG,
    PagesAttributes as PA,
    StreamAttributes as SA,
    TrailerKeys as TK
)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM