首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >black不会遵守对长import语句的行长度限制

black不会遵守对长import语句的行长度限制
EN

Stack Overflow用户
提问于 2021-05-20 05:29:06
回答 1查看 37关注 0票数 0

考虑下面的import语句:

代码语言:javascript
复制
from modeling.estimation.performance_analysis.monte_carlo.least_squares.error_grids import BaseGrid

black (限制为80个字符/行)将其格式化为:

代码语言:javascript
复制
from modeling.estimation.performance_analysis.monte_carlo.least_squares.error_grids import (
    BaseGrid,
)

超过80个字符。任何使用\分解import语句的尝试都会被black撤消。

我怎样才能让黑人遵守80个字符的限制?

EN

回答 1

Stack Overflow用户

发布于 2021-05-20 06:07:10

请尝试以下操作:

如果BaseGrid是一个函数:

代码语言:javascript
复制
package = "modeling.estimation.performance_analysis.monte_carlo.least_squares"
name = "error_grids"
BaseGrid = getattr(__import__(package, fromlist=[name]), name).BaseGrid

BaseGrid()

如果BaseGrid是python文件(拆分字符串以遵守行长度限制):

代码语言:javascript
复制
p = "modeling.estimation.performance_analysis"
p2 = "monte_carlo.least_squares.error_grids"
name = "BaseGrid"
BaseGrid = getattr(__import__(p + '.' + p2, fromlist=[name]), name)

它使用__import__函数而不是import语句导入到变量中,并且应该等同于:

代码语言:javascript
复制
from modeling.estimation.performance_analysis.monte_carlo.least_squares.error_grids import BaseGrid as BaseGrid
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67611140

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档