Sybren Stuvel 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. > >> My question is can I make it faster ? > > As soon as you set activeb=1, it no longer changes to any other value. > That means that you could immediately return from that point. It's > also cleaner to actually close an open file: > > 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 > netstat = os.popen("netstat -a -n | grep '%s'" % checkip) > for line in netstat: > s = line > if s: > activeb = 1 > break > netstat.close() > return activeb > > Another way would be to let grep do the work for you. Pass it the '-q' > option and check its exit code. > > Sybren
Thank you for pointing that out. Speed did not improve , but it definitely is cleaner code now. Have a nice day Db -- http://mail.python.org/mailman/listinfo/python-list