Например, если текстовый файл содержит текст «Служит 4», какой код я могу использовать для определения места, где в файле происходит слово «Служит» (предположим, что оно происходит один раз) и сохранить целое число сразу после него, Переменная?Поиск определенного слова в текстовом файле и сохранение целого числа после него как переменной?
Я уже разобран файл и текущее имя переменного является:
def parse_file(filename):
file = open(filename, 'r')
name = (file.readline()).strip(' \t\n\r') #name on first line
ingredients = []
instructions = ""
servings = 0
line = ""
В настоящее время, я достигаю ключевое слово «Подача» и целое число, которое следует за ним, используя этот кусок кода (текстовые файлы считывание последовательны в их форматировании, поэтому это делается, как это)
#reading serving size which is several numbers (\d+)
line = (file.readline()).strip(' \t\n\r')
servings = int((re.search("\d+", line)).group(0))
Однако, это работает только, если текстовый файл я имею дело с не имею никаких разрывы строк между именем, ингредиенты, и разделы инструкций текстового файла. Мне нужно, чтобы мой код мог обрабатывать все случаи, разрыв строки или нет.
Это вид файла, который я имею дело с: https://www.dropbox.com/s/cbumq16pgjqyr95/recipe.txt?dl=0
Измените [существующий вопрос] (http://stackoverflow.com/questions/28221730/how-do-i-find-a-particular-word-in-a-text-file-and-store-the-integer- право-после), а не размещать новую версию. – Kevin
_ чтобы иметь возможность обрабатывать все случаи, разбить строку или нет_ - Если между «Сервером» и цифрами есть больше вещей, кроме строк новой строки, нам нужно увидеть пример этого. –
Я добавил пример текстового файла. – potatolativa