Select one of 2 functions with the same name ?
Stef Mientki
S.Mientki-nospam at mailbox.kun.nl
Sun Jun 10 16:03:58 EDT 2007
thanks Francesco and "7stud",
The solution with objects is too difficult,
because I want to stay very close to the orginal language,
( so the users can understand the Python code,
and the automatic translation becomes as simple as possible).
But after some tests, it seems to be quit simple:
<Python>
simulation_level = 0
def f1():
print 'f1'
if simulation_level == 2:
def f1():
print 'f2'
f1()
</Python>
cheers,
Stef Mientki
Francesco Guerrieri wrote:
> If the functions are
> f1, f2, f3 you could go this way:
>
> def SimulationRun():
> if simulation_level = 1: SimulationFunction = f1
> else if simulation_level = 2: SimulationFunction = f2
> else ....
>
>
> and in the rest of the code you can refer to SimulationFunction
> instead of explicitly calling f1, f2 or f3.
>
> I'm sure that there are many smarter methods :-)
>
>
>
> On 6/10/07, Stef Mientki <S.Mientki-nospam at mailbox.kun.nl> wrote:
>> hello,
>>
>> For a simulation at different levels,
>> I need different functions with the same name.
>> Is that possible ?
>>
>> I can realize it with a simple switch within each function,
>> but that makes the code much less readable:
>>
>> def Some_Function():
>> if simulation_level == 1:
>> ... do things in a way
>> elif simulation_level == 2:
>> ... do things in another way
>> elif simulation_level == 3:
>> ... do things in yet another way
>>
>>
>> thanks,
>> Stef Mientki
>> --
>> http://mail.python.org/mailman/listinfo/python-list
>>
>
>
More information about the Python-list
mailing list