Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #28991

Re: avoid the redefinition of a function

From Alister <alister.ware@ntlworld.com>
Subject Re: avoid the redefinition of a function
Newsgroups comp.lang.python
References <CAOuJsMnLf4P9p_rZ4p1W-SndkSOV2WK_v5j1AET085LZ6bdavQ@mail.gmail.com> <5050938F.7030105@gmail.com> <mailman.572.1347469027.27098.python-list@python.org>
Message-ID <7944s.27167$CU7.24982@fx02.am4> (permalink)
Organization virginmedia.com
Date 2012-09-12 18:04 +0000

Show all headers | View raw


On Wed, 12 Sep 2012 18:56:46 +0200, Jabba Laci wrote:

>> For example:
>>
>> def install_java():
>>    pass
>>
>> def install_tomcat():
>>    pass
> 
> Thanks for the answers. I decided to use numbers in the name of the
> functions to facilitate function calls. Now if you have this menu option
> for instance:
> 
> (5) install mc
> 
> You can type just "5" as user input and step_5() is called
> automatically. If I use descriptive names like install_java() then
> selecting a menu point would be more difficult. And I don't want users
> to type "java", I want to stick to simple numbers.
> 
> Laszlo

No No NO!
you cant just pass user input to system calls without validating it first
(google sql injection for examples of the damage unsanitised input can 
cause, it is not just as SQL problem)

it is just as easy so select a reasonably named function as a bad one

option=raw_input('select your option :')

if option =="1": install_java()
if option =="2": install_other()

alternatively you cold add your functions into a dictionary an call them 
from that

opts={'1':install java,'2':install_other}

option=raw_input('select your option :')
opts[option]

Poorly named functions are a major example of poor programming style.

one of the fundamental pillars for python is readability!



-- 
<knghtbrd> He's a about half the size of the others.
<knghtbrd> But he's got a chainsaw.

Back to comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Re: avoid the redefinition of a function Jabba Laci <jabba.laci@gmail.com> - 2012-09-12 18:56 +0200
  Re: avoid the redefinition of a function Alister <alister.ware@ntlworld.com> - 2012-09-12 18:04 +0000
    Re: avoid the redefinition of a function MRAB <python@mrabarnett.plus.com> - 2012-09-12 19:33 +0100
    Re: avoid the redefinition of a function D'Arcy Cain <darcy@druid.net> - 2012-09-12 17:49 -0400
    Re: avoid the redefinition of a function Peter Otten <__peter__@web.de> - 2012-09-13 10:23 +0200
      Re: avoid the redefinition of a function Alister <alister.ware@ntlworld.com> - 2012-09-13 17:59 +0000

csiph-web