Использовать «configparser» для Python для обработки строк под секцией ini как (необработанные) строки? [Дубликат]

ECMAScript 6 имеет «генераторы», которые позволяют вам легко программировать в асинхронном стиле.

function* myGenerator() {
    const callback = yield;
    let [response] = yield $.ajax("https://stackoverflow.com", {complete: callback});
    console.log("response is:", response);

    // examples of other things you can do
    yield setTimeout(callback, 1000);
    console.log("it delayed for 1000ms");
    while (response.statusText === "error") {
        [response] = yield* anotherGenerator();
    }
}

Для запуска вышеуказанного кода вы делаете это:

const gen = myGenerator(); // Create generator
gen.next(); // Start it
gen.next((...args) => gen.next([...args])); // Set its callback function

Если вам нужно настроить таргетинг на браузеры, которые не поддерживают ES6, вы можете запустить код через Babel или short-compiler для генерации ECMAScript 5.

Обратный вызов ...args завернут в массив и разрушен, когда вы их читаете так что шаблон может справиться с обратными вызовами, которые имеют несколько аргументов. Например, с узлом fs :

const [err, data] = yield fs.readFile(filePath, "utf-8", callback);

3
задан swimmingfisher 8 August 2014 в 10:34
поделиться

1 ответ

Если вы используете Python 3, вам не нужно. Посмотрите раздел Документов Python на Настройка поведения Parser . По умолчанию configparser использует «:» и «=» в качестве разделителей, но при создании объекта configparser вы можете указать разные разделители:

import configparser

parser = configparser.ConfigParser(delimiters=('?', '*'))

В этом примере разделители по умолчанию были заменены на вопросительный знак и звездочку. Вы можете изменить разделители на любые символы, которые вы хотите, которые не будут конфликтовать с информацией, необходимой для размещения в файле конфигурации.

Вышеуказанный метод будет работать только для Python 3, так как Python 2 ConfigParser жестко закодирован, чтобы распознавать одинаковые знаки и двоеточия в качестве разделителей. Согласно этот вопрос SO , имеется резервный конфигуратор, доступный для 2,2-intrereter в https://pypi.python.org/pypi/configparser . Посмотрите, будет ли это работать для вас.

5
ответ дан Community 24 August 2018 в 05:28
поделиться
Другие вопросы по тегам:

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