2012-06-12 2 views

ответ

2
with open('data.txt') as inf: 
    for line in inf: 
     if line.startswith('ExitAddress'): 
      print line.split()[1] 

даст вам

220.0.231.71 

где data.txt содержит четыре строки, которые вы разместили (я запустил его с большим файлом, который вы связаны с). Использование with также «автоматически» закроет ваш файл для вас, когда вы закончите, или возникнет исключение.

Это list comprehension будет собирать все данные в списке для вас после того, как файл данных был открыт:

a = [line.split()[1] for line in inf if line.startswith('ExitAddress')] 

или в качестве альтернативы, если вы не хотите, чтобы собрать весь список в памяти сразу , вы могли бы использовать generator expression:

g = (line.split()[1] for line in inf if line.startswith('ExitAddress')) 

вы также позаботиться о закрытии файла самостоятельно.

+0

Не нужно разделять() каждую строку, вы можете разделить только в том случае, если условное значение истинно. – jordanm

 Смежные вопросы

  • Нет связанных вопросов^_^