Me gustaría utilizar el tiempo de análisis y la interpolación en tiempo de ejecución para los valores de un archivo de configuración configobj. La forma más sencilla de hacer una interpolación simple de cadenas en Python es "%(foo)s" % somedict
. Desafortunadamente, configobj utiliza el mismo mecanismo de interpolación y todavía no he encontrado una forma de escapar de él. Mi valor ideal sería el siguiente:¿Cómo escapar de un signo% en un valor de configobj?
othervar = foo
someconfigobjkey = %(othervar)s %%(runtimevar)s
Sin embargo, configobj intenta (y no) reemplazar la segunda variable. Otra forma de responder a esta pregunta es proporcionar una forma diferente (configobj) para hacer el tiempo de análisis y la interpolación de tiempo de ejecución.
Como dije en mi pregunta inicial, uso configobj y no ConfigParser. Quizás asumí que este módulo es demasiado conocido, de todos modos se puede encontrar en http://www.voidspace.org.uk/python/configobj.html. –
Asi que No sé ese módulo y tampoco lo reconocí como un nombre de módulo en tu publicación. ¿Alguna razón para no usar el módulo estándar ConfigParser?Si esto también lo hiciera por usted, el problema también se resolvería :) –
En desarrollo corporativo, la elección de herramientas no siempre se da. –