Thomas Guettler wrote:
for file in os.listdir(...): ...
pylint meckert nun, dass "file" ein built-in ist und überschrieben wird.
W0622: Redefining built-in %r Used when a variable or function override a built-in.
Ich stehe nun vor der Frage: Ich ignoriere W0622, oder ich passe meinen Code an.
Alternative 3: Upgrade auf Python 3. ;) Im allgemeinen versuche ich built-ins nicht zu ueberschreiben. Das Problem mit der Schleife oben ist ja auch dass "file" nicht auf die Schleife beschraenkt ist, wie z.B. in C++, sondern halt im aktuellen Scope (funktionslokal oder in einem Namespace). Fuer diesen Fall sind z.B. "f" (klein, schnell zu tippen, bei kleinem Nutzungsbereich) oder "path" (passt sogar IMHO noch besser als "file") gute Alternativen.
Mit flymake sieht man Fehler schon beim Tippen: https://github.com/akaihola/flymake-python
Ich habe grade hier Geany (http://www.geany.org) im Test, speziell fuer Python. Uli