跳转到主要内容

flake8的扩展,用于验证函数名称、分解和与注释的一致性。

项目描述

flake8-functions-names

PyPI version PyPI - Python Version

flake8的扩展,用于验证函数名称、分解和与注释的一致性。该插件还对deal契约进行了一些验证。

此插件有助于提供更好的函数命名。验证基于我的文章

只有当安装了deal时,才会启用与deal相关的验证。否则,它们将被禁用。

安装

pip install flake8-functions-names

示例

def is_user_banned(user: User) -> str:
    return 'is_banned' if user.id in BANNED_USERS else 'not_banned'

def save_user(user: User) -> None:
    user.save()

用法

$ flake8 test.py
text.py:1:35: FNE001 Name of the function says that it should return bool-like, but it returns str
text.py:4:4: FNE003 Name of the function uses "save", but not uses "to"

在Python 3.8+和flake8 3.9+上进行了测试。

错误代码

错误代码 描述
FNE001 函数的名称表明它应该返回bool-like[^1],但实际上返回了actual_type
FNE002 方法具有@property装饰器,但其名称中包含动词(verb
FNE003 函数的名称使用save,但没有使用to
FNE004 函数的名称使用load,但没有使用from
FNE005 函数的返回类型是bool-like[^1],但名称没有显示出来
FNE006 函数的名称表明它处理数据,因此应该是纯函数,但它没有@deal.pure()
FNE007 不建议在函数名称中使用and
FNE008 函数的名称以它的第一个参数名称结尾

[^1]: bool-like返回类型:bool, TypeGuard

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源代码分发

flake8_functions_names-0.4.0.tar.gz (10.1 kB 查看哈希值)

上传时间 源代码

由以下支持

AWSAWS云计算和安全赞助商DatadogDatadog监控FastlyFastlyCDNGoogleGoogle下载分析MicrosoftMicrosoftPSF赞助商PingdomPingdom监控SentrySentry错误日志StatusPageStatusPage状态页面