PEP8有一个关于将导入置于文件顶部的规则:
导入总是放在文件的顶部,紧随任何模块注释和文档字符串之后,以及模块全局变量和常量之前。
但是,在某些情况下,我可能想做些类似的事情:
import sys
sys.path.insert("..", 0)
import my_module
在这种情况下,pep8
命令行实用程序会标记我的代码:
E402模块级别导入不在文件顶部
通过sys.path
修改达到PEP8的最佳方法是什么?
我有这段代码,因为我遵循的是《The Hitchhiker’s
Guide to Python》中
给出的项目结构。
该指南建议我有一个与my_module
文件夹分开的tests
文件夹,这两个文件夹都位于同一目录中。如果我要访问my_module
从tests
,我想我需要添加..
到sys.path
通常foo/tests
,我的项目的子目录中有多个带有测试的文件,而我正在测试的模块位于中foo/src
。为了从foo/tests
没有导入错误的情况下运行测试,我创建了一个foo/tests/pathmagic.py
看起来像这样的文件;
"""Path hack to make tests work."""
import os
import sys
bp = os.path.dirname(os.path.realpath('.')).split(os.sep)
modpath = os.sep.join(bp + ['src'])
sys.path.insert(0, modpath)
然后在每个测试文件中,使用
import pathmagic # noqa
作为第一个导入。“ noqa”注释可防止pycodestyle
/pep8
抱怨未使用的导入。
顶部 tab,当需要在页面顶部展示 tab 导航时使用,实现这个效果主要有两个地方要注意一下: 顶部点击后有颜色的改变以及有过度效果 顶部点击后下面对应部分也要发生改变 示例代码如下: <template> <div class="page"> <div class="page__bd"> <div class="weui-tab"> <div class=
问题内容: 这些是我的示例文件: t1.js: t2.js: 当我在Firefox 46中加载页面时,它返回“ SyntaxError:导入声明可能仅出现在模块的顶层” –但是我不确定import语句可以在此处获得多少顶层。此错误是红色鲱鱼吗,并且尚不支持导入/导出吗? 问题答案: 实际上,您得到的错误是因为您需要明确声明您正在加载模块-只有这样,才允许使用模块: 。推荐阅读。 这些浏览器版本(及
以下是我的示例文件: T1.js: T2.js: 当我在Firefox46中加载该页面时,它返回“SyntaxError:import declarations Mays only Account at top level of a module”--但我不确定import语句在这里还能达到多少顶级。这个错误是不是一个错误,是不是还不支持导入/导出?
顶部导航栏放在页面头部: 实例<nav data-topbar> <ul> <li> <!-- 如果你不需要标题或图标可以删掉它 --> <h1><a href="#">WebSiteName</a></h1> </li> <!-- 小屏幕上折叠按钮: 去掉 .menu-icon 类,可以去除图标。 如果需要只显示图片,可以删除
问题 你无法导入你的Python代码因为它所在的目录不在sys.path里。你想将添加新目录到Python路径,但是不想硬链接到你的代码。 解决方案 有两种常用的方式将新目录添加到sys.path。第一种,你可以使用PYTHONPATH环境变量来添加。例如: bash % env PYTHONPATH=/some/dir:/other/dir python3 Python 3.3.0 (defau
我有这个推特引导代码 但是当我查看页面的开头时,导航栏会阻塞页面顶部附近的一些内容。有没有办法让它在查看页面顶部时将其余内容向下推,这样内容就不会被导航栏阻挡?