On Sat, 2 Sep 2006 13:22:59 +0200, Sybren Stuvel <[EMAIL PROTECTED]> wrote: > DarkBlue enlightened us with: >> Following code works . > > No it doesn't - it's indented badly. I guess you mean something like: > > def activeip(checkip): > # if there is any line returned we set activeb to 1 indicating that > # this ip is active during a netstat run > activeb=0 > for line in os.popen("netstat -a -n | grep '%s'" % checkip) : > s=line > if s <>'' : > activeb=1 > return activeb > > Also try to use != instead of <>. Being equal or not has nothing to do > with being larger or smaller.
Yeah, that took me a few seconds to mentally convert to !=. Personally, I'd just write "if line:" in this case. While we're at it, please write the documentation from a /user/ standpoint, not as internal scribblings. And don't call the address 'checkip' -- that makes it look like you pass a functor to the function. Maybe something like this: | def ip_is_active(addr): | """Return success if 'addr' shows up in the output from 'netstat -an'. | We assume that a suitable version of netstat exists. | """ | activeb=0 | ... This doc string is vague -- but that's because it's unclear what the function does and what you expect it to do. I see half a dozen problems or so, but that might be ok if its callers don't expect too much. /Jorgen -- // Jorgen Grahn <grahn@ Ph'nglui mglw'nafh Cthulhu \X/ snipabacken.dyndns.org> R'lyeh wgah'nagl fhtagn! -- http://mail.python.org/mailman/listinfo/python-list