Giacomo Boffi wrote:
Jean-Michel Pichavant <jeanmic...@sequans.com> writes:

Giacomo Boffi wrote:
i have this code

def example(a):
    return lambda b: a+b+1

fun = example(10)
k_1 = fun(7)
...

and pylint tells me

[...]
C:  4: Invalid name "fun" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:  5: Invalid name "k_1" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
[...]
                                                                g

Pylint default rules need some tuning

ok, but maybe it's not my specific problem (see below)

However, given you example, you should not insert code execution at
you module level, unless it's required only at the module import. I
dont know what is your module

module? this was not well specified in my OP, but i'd rather speak of
a "script" instead of a module...

If by "script" you mean quick-and-dirty, then why bother running pylint on it ? Sounds out of topic to me.

But if you still care about how correctly structured you script should be, then it should be written almost like a module.

- do not write executable code at the module level
- if a function needs an information, it should ask for it as a parameter, not using a de-scoped variable (aka global variables) - if a function ask for too many parameters, then it may ask for few objects instead (e.g. plot(x,y,z) => plot(point), poor example though, 3 paramaters are acceptable) - it's better if your script can be imported in a separate file and tested there

the list could contain many more items, and the more item you implement the closer to a module you get.

JM


--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to