请考虑以下代码:
from bs4 import BeautifulSoup data = "test text " soup = BeautifulSoup(data) print(soup.find(text=re.compile(r'test$')))
它缺少一条import re
线,NameError
没有它就会失败.
现在,我尝试使用PyCharm
的自动导入功能:重点re
和打击Alt+Enter
,这将打开如下弹出:
现在,如果我选择Import 're'
选项,Pycharm会在脚本顶部插入新的导入行:
import re from bs4 import BeautifulSoup data = "test text " soup = BeautifulSoup(data) print(soup.find(text=re.compile(r'test$')))
看起来几乎不错,但它没有遵循PEP8导入指南:
应按以下顺序对导入进行分组:
标准库导入
相关的第三方进口
本地应用程序/库特定导入
您应该在每组导入之间添加一个空行.
换句话说,两个导入之间缺少空白行:
import re from bs4 import BeautifulSoup
问题是:是否可以告诉Pycharm遵循PEP8指南并在自动导入的不同导入类型的行之间插入换行符?
作为一种解决方法,我在正确组织导入之后调用Optimize Imports.
你不能.原因是PyCharm没有告诉您,如果您这样做或任何进口声明,您违反了任何PEP8指南.一,你的PyCharm已经过时(最新版本是4.0.2/4.2)或者第二,你的PyCharm似乎有一个bug,因此有理由提交错误报告.如果您可以尝试再次安全地下载PyCharm 以尝试修复该错误.如果这不起作用,请提交错误报告或养成在语句之间留空的习惯.希望这能回答你的问题!哦,无论你是使用from,import还是两种语句都没关系.