问题标签 [pep8]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Pyflakes + pep8 在普通模式下检查 vim
我使用 vim 作为我的 IDE 和 python,它很棒。我使用 pyflakes + pep8 和适当的插件。我需要这些附加功能:
- pyflakes “即时”检查,而无需切换到正常模式。
- pep8 检查“即时”。目前,我已映射“F6”来进行 pep8 检查,并弹出一个快速修复窗口。我希望 pep8 以与 pyflakes 相同的方式完成,但在正常模式下。
- pep8 和 pyflakes 的亮点必须不同。
谢谢
python - PEP 8:应该如何对 __future__ 导入进行分组?
根据PEP 8:
进口应按以下顺序分组:
- 标准库导入
- 相关第三方进口
- 本地应用程序/库特定导入
您应该在每组导入之间放置一个空行。
但它没有提到__future__
进口。导入应该__future__
与标准库导入组合在一起还是与标准库导入分开。
所以,哪个更优选:
或者:
python - 我应该如何在 python 评论中格式化长 url 并且仍然符合 PEP8
在块注释中,我想引用一个长度超过 80 个字符的 URL。
显示此 URL 的首选约定是什么?
我知道 bit.ly 是一个选项,但 URL 本身是描述性的。缩短它然后有一个描述缩短 URL 的嵌套注释似乎是一个糟糕的解决方案。
python-3.x - 断言包装函数
所以我在查看代码时遇到了这个有趣的问题:
想知道将断言包装到您自己的自定义版本是否是更快/更好的解决方案,然后assert hasattr(...)
每次需要确保属性存在而不是无时使用?
python - Django / Python (PEP 8):如果我想命名一个名为 Property 的模型类。我应该将其保留为 Property 还是 Property_?
我知道这property()
是 Python 中的内置函数,但我想将模型类命名为Property
. 像这样简单的东西:
我应该打电话给班级Property
还是Property_
?现在我知道 Python 区分大小写,但我问的原因是因为在 Django 中,Property
模型类被标识为myapp.property
.
在与我相关的其他模型中,我在这样的字段中Property
添加了一个_
python - 从 QuickFix 窗口应用自动 pep8 修复
背景:
我正在使用(很棒的)Vim 插件python-mode,其中包括 pep8 linter。该:PyLint
命令运行所有 linter 并在 QuickFix 窗口中打开错误。
问题:
现在,假设我只使用 pep8 linter,并且我有一个充满错误的 QuickFix 窗口。我想逐步检查每个错误并应用自动修复(使用类似 autopep8 的东西)。autopep8 工具很棒,但它会出错。理想情况下,我希望能够监督 Vim 中的每个修复(应用修复、检查、移动到下一个修复)。
我目前的方法是在我的 Python 文件上运行autopep8,比较结果,然后修复任何错误的更改:
但是,这种方法破坏了我的撤消历史,并且看起来不必要地复杂。有没有更好的办法?
问题:
有没有办法在 QuickFix 窗口中自动将 pep8 修复(如果可用)应用于 pep8 错误?
python - 在一行中结合两个赋值和pep8风格的python代码
如何将第一行和第二行合并为一行?
另一个问题:
我应该如何将线分成两条线?
python - 这个全局类变量如何兼容 pep8 并且仍然有效?
Pep8建议始终cls
用作类方法定义的第一个参数。现在假设我想使用一个类变量(在这种情况下:)cls.cartridge_state
,它也可以在实例方法中使用(在这种情况下:)__init__
。所以为此我需要使变量成为全局变量(参见下面的代码)。但是实例化FountainPen
会产生以下运行时错误:
但是当我更改global cartridge_state
为global cls.cartridge_state
我尝试导入模块时再次收到 syntaxError 。
如何让类变量cartridge_state
符合 pep8 并使此代码正常工作?
python - 如何正确使用 python 的 isinstance() 检查变量是否为数字?
我发现一些旧的 Python 代码正在执行以下操作:
正如预期的那样,pep8
抱怨这种推荐使用isinstance()
.
现在,问题是该numbers
模块是在 Python 2.6 中添加的,我需要编写适用于 Python 2.5+ 的代码
所以if isinstance(var, Numbers.number)
不是解决方案。
在这种情况下,哪个是正确的解决方案?
python - 在同一文件夹中导入python
如果在同一文件夹中的另一个文件中导入文件。
文件结构:
在 d.py 中:
更新 1:
我两个都用
和:
程序无法运行并引发 ImportError。
为了解决这个问题,我使用
但是,这似乎不是标准方式。
像一些著名的项目:龙卷风或其他什么,总是使用这种结构。但没有插入线。
如果导入语句在 unittest 文件中,则自动测试工具(如 sniffer、autonose)可以运行这种结构。
我不知道为什么。
PEP328 或 PEP366 并没有给我一个很好的解决方案。
PEP8 建议我这样做。
导入另一个模块(在另一个文件中)时也会出现此问题,例如: