avoid the redefinition of a function
Alister
alister.ware at ntlworld.com
Wed Sep 12 10:04:13 EDT 2012
On Wed, 12 Sep 2012 06:15:21 -0700, Ramchandra Apte wrote:
> On Wednesday, 12 September 2012 18:26:36 UTC+5:30, 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.
>
> Use a code checker such as PyLint (http://www.logilab.org/857 or pylint
> package).
> Better idea:
> I *strongly* recommend to never use names such as step_12. Use
> descriptive names and the problem will not occur.
> Your project looks interesting. I can contribute. :-)
> ---
> Bragging rights:SO account suspended py2c, a Python to *pure* C/C++
> translator, is my project (I am the author)
> http://code.google.com/p/py2c/
+1 Regards the Naming of your functions it makes it harder for new users
to read & understand the code (and yourself in 6 months!)
--
Overload -- core meltdown sequence initiated.
More information about the Python-list
mailing list