str.find for multiple strings

Bart Nessux bart_nessux at hotmail.com
Wed Feb 11 14:48:22 EST 2004


Peter Hansen wrote:
> Bart Nessux wrote:
> 
>>x = str.find(temp, '120.50')
>>
>>I am looking for '120.50' '120.51' '122.78' etc. How can I do this with
>>just one str.find... I can use re if I must, but I'd like to avoid it if
>>possible.
> 
> 
> In addition to Fecundo's questions, here's another.  What does "temp"
> contain?  A single temperature string, or a temperature embedded in
> a bunch of other stuff, or a whole series of temperatures, or what?
> 
> -Peter

Here's what I'm doing

def exclude():
    import os
    os.chdir('/home/rbt/scripts')
    inputFile = file('ath_ips.txt', 'r')
    data = inputFile.read()
    inputFile.close()
    comment = '#'
    net0 = '128.173.120.'
    net1 = '128.173.122.'
    host0 = ['50','51','52','53','54','55']
    host1 = ['17','25','49','50','55','58','70']
    for h0 in host0:
       h0 = net0+h0
       rep0 = comment+h0
       sea0 = str.find(data, h0)
       if sea0 >=0:
          data = data.replace(h0, rep0)
    for h1 in host1:
       h1 = net1+h1
       rep1 = comment+h1
       sea1 = str.find(data, h1)
       if sea1 >=0:
          data = data.replace(h1, rep1)
    outputFile = file('ath_ips.txt', 'w')
    outputFile.write(data)
    outputFile.close()





More information about the Python-list mailing list