Use lambda expressions to define some constraints:

gt = lambda x: lambda y: x>y
eq = lambda x: lambda y: x==y

constraints = [gt(2), eq(1)]
data = [3,1]

for i,c in enumerate(constraints):
    print c(data[i])
   
   

On 9/12/2012 5:56 AM, Jabba Laci wrote:
> Hi,
>
> I have an installer script that contains lots of little functions. It
> has an interactive menu and the corresponding function is called. Over
> time it grew long and when I want to add a new function, I should give
> a unique name to that function. However, Python allows the
> redefinition of functions:
>
> #!/usr/bin/env python
>
> def step_1():
>     print 1
>
> def step_1():
>     print 2
>
> step_1()
>
> This will call the 2nd function. Now my functions are called step_ID
> (like step_27(), step_28(), etc.). How to avoid the danger of
> redefinition? Now, when I write a new function, I search for its name
> to see if it's unique but there must be a better way.
>
> Thanks,
>
> Laszlo
> P.S.: the script is here ( https://github.com/jabbalaci/jabbatron ) if
> you are interested. It's made for Ubuntu.


Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

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

Reply via email to