Floris van Manen wrote:
L.S. !
Just in case someone is in the mood to find a faster & simpler way to
this piece of code ...
Thanks !
.Floris
Geen idee wat je code moet doen, en dus hoe die te verbeteren. Een
algemene tip. Dit:
def FindSegment(r, A=[], FACT=0, DATA=1 ):
Is een erg slecht idee: Gebruik geen keyword arguments met mutable types
(lists en dictionaries) als default values. Die worden geinstantieerd op
het moment dat de functie voor het eerst geladen wordt, en alle
eventuele wijzigingen zijn de default value voor de volgende aanroep.
Een van die weinige dingen in python waar een hartgrondig WTF? op zijn
plek is. Als je echt een lege lijst nodig hebt als er niets meegegeven
wordt voor A, doe dan A=None, en check daarop aan het begin van je
functie body, en stop er een verse lege lijst in. Maar dat wil je
blijkbaar sowieso niet, want de volgende regel:
if r <= A[0][FACT]:
faalt met een lege lijst. Dus het is me een raadsel waarom er een
default value is. ;)
Verder zijn variabelen met uppercase letters een gruwel.
--
- eric casteleijn
http://thisfred.blogspot.com
_______________________________________________
Python-nl mailing list
Python-nl@python.org
http://mail.python.org/mailman/listinfo/python-nl