pylint woes
Chris Angelico
rosuav at gmail.com
Sat May 7 23:51:03 EDT 2016
On Sun, May 8, 2016 at 1:28 PM, DFS <nospam at dfs.com> wrote:
> Invalid constant name "cityzip" (invalid-name)
> Invalid constant name "state" (invalid-name)
> Invalid constant name "miles" (invalid-name)
> Invalid constant name "store" (invalid-name)
> Invalid variable name "rs" (invalid-name)
... huh?? The first four seem to have been incorrectly detected as
constants. How are they used?
The last one is probably "too short". Or something.
> standard import "import re, requests" comes before "import pyodbc, sqlite3"
> (wrong-import-order)
>
> * So I switched them, and then it complained about that:
>
> standard import "import pyodbc, sqlite3" comes before "import re, requests"
> (wrong-import-order)
>
> -------------------------------------------------------------------------
>
> You can't win with pylint...
Probably that means it got confused by the alphabetization - "pyodbc"
should come before "re" and "requests", but "sqlite3" should come
after. Either fix the first problem by splitting them onto separate
lines, or ignore this as a cascaded error.
My general principle is that things on one line should *belong* on one
line. So having "import re, requests" makes no sense, but I might have
something like "import os, sys" when the two modules are both used in
one single line of code and never again. Otherwise, splitting them out
is the easiest.
>>> +-------------------------+------------+
>>> |superfluous-parens |3 | I like to surround 'or'
>>> statments with parens
>>
>>
>> I would need examples to comment
>
>
>
> if ("Please choose a state" in str(matches)):
> if (var == "val" or var2 == "val2"):
Cut the parens. Easy!
> It says "Used builtin function 'filter'. Using a list comprehension can be
> clearer. (bad-builtin)"
Kill that message and keep using filter.
ChrisA
More information about the Python-list
mailing list