Считайте объект файла как строку в Python

31
задан Oli 14 December 2012 в 11:29
поделиться

3 ответа

Можно использовать Python в интерактивном режиме для поиска решений.

, если f Ваш объект, можно войти dir(f) для наблюдения всех методов и атрибутов. Существует тот, названный read. Войдите help(f.read), и это говорит Вам, который f.read() способ получить строку от объекта файла.

77
ответ дан 27 November 2019 в 21:34
поделиться

Из документа file.read () (мой акцент):

file.read ([размер])

Read на уровне большинства байтов размера из файла (меньше, если чтение поражает EOF прежде, чем получить байты размера). Если аргумент размера отрицателен или опущен, считайте все данные, пока EOF не достигнут. байты возвращаются как строковый объект . Пустая строка возвращается, когда с EOF сразу встречаются. (Для определенных файлов, как ttys, имеет смысл продолжать читать после того, как EOF будет поражен.) Отмечают, что этот метод может вызвать базовую функцию C, освобожденную несколько раз, чтобы получить максимально близко к байтам размера. Также обратите внимание, что то, когда в не блокирующемся режиме, меньше данных, чем было запрошено, может быть возвращено, даже если никакой параметр размера не был дан.

знать, что поиск regexp на большом строковом объекте не может быть эффективным, и рассмотреть выполнение поиска линию за линией, с помощью file.next () (объект файла является своим собственным итератором).

13
ответ дан 27 November 2019 в 21:34
поделиться

Michael Foord, иначе Voidspace имеет превосходное учебное руководство на urllib2, который можно найти здесь: urllib2 - Недостающее Руководство

, Что Вы делаете, должно быть довольно простым, наблюдать этот пример кода:

import urllib2
import re
response = urllib2.urlopen("http://www.voidspace.org.uk/python/articles/urllib2.shtml")
html = response.read()
pattern = '(V.+space)'
wordPattern = re.compile(pattern, re.IGNORECASE)
results = wordPattern.search(html)
print results.groups()
5
ответ дан 27 November 2019 в 21:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: