gpt4 book ai didi

用于将函数作为属性进行比较的 Python 代码检查器

转载 作者:太空狗 更新时间:2023-10-30 01:38:50 27 4
gpt4 key购买 nike

我偶尔会花大量时间来追踪代码中的脑残问题……虽然我通常会针对它运行 pylint,但有些东西会绕过 pylint。我最容易忽略的问题是……

# normally, variable is populated from parsed text, so it's not predictable
variable = 'fOoBaR'
if variable.lower == 'foobar':
# ^^^^^<------------------ should be .lower()
do_something()

pylint 和 Python 都没有对此大声疾呼...是否有可以标记此特定问题的 python 代码检查工具?

最佳答案

您建议代码检查器如何验证这一点?这是完全合法的语法。与其检查这种错误,还不如养成使用更好模式的习惯。

代替:

variable = 'fOoBaR'
if variable.lower == 'foobar':
# ^^^^^<------------------ should be .lower()
do_something()

这样做:

variable = 'fOoBaR'
sane_variable = variable.lower()
if sane_variable == 'foobar':
do_something()

这样你总是在你比较的值上显式调用 .lower(),而不是依赖于就地方法调用和比较,这导致非常您遇到的陷阱。

关于用于将函数作为属性进行比较的 Python 代码检查器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5463296/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com