Articles of formato de cadena de

python: extracción de variables desde plantillas de cadena

Estoy familiarizado con la capacidad de insertar variables en una cadena usando plantillas , como esta: Template(‘value is between $min and $max’).substitute(min=5, max=10) Lo que ahora quiero saber es si es posible hacer lo contrario. Quiero tomar una cadena y extraer los valores usando una plantilla, de modo que tenga alguna estructura de datos (preferiblemente […]

¿Por qué el string.format pad de Python con “\ x00”?

Quería rellenar una cadena con caracteres nulos (“\ x00”). Conozco muchas formas de hacer esto, así que no responda con alternativas. Lo que quiero saber es: ¿por qué la función string.format() Python no permite el relleno con nulos? Casos de prueba: >>> “{0:\x01<10}".format("bbb") 'bbb\x01\x01\x01\x01\x01\x01\x01' Esto muestra que los caracteres escapados de hex funcionan en general. […]

El formato de cadena con el formato “{0: d}” proporciona el código de formato desconocido ‘d’ para el objeto de tipo ‘flotante’

Si entendiera los documentos correctamente, en el formato de la cadena 2.6.5 de python “{0: d}” haría lo mismo que “% d” con la forma String.format () de formatear cadenas ” I have {0:d} dollars on me “.format(100.113) Debería imprimir “Tengo 100 dólares en mí” Sin embargo me sale el error: ValueError: código de formato […]

Formato de cadena de Python cuando la cadena contiene “% s” sin escapar

Al formatear una cadena, mi cadena puede contener un módulo “%” que no deseo haber convertido. Puedo escapar de la cadena y cambiar cada “%” a “%%” como solución alternativa. p.ej, ‘Day old bread, 50%% sale %s’ % ‘today!’ salida: ‘Day old bread, 50% sale today’ Pero, ¿hay alternativas para escapar? Tenía la esperanza de […]

Python 3.6+ formatea cadenas de desempaquetar diccionarios con claves faltantes

En Python3.4 puedes hacer lo siguiente: class MyDict(dict): def __missing__(self, key): return “{%s}” % key Y luego algo como: d = MyDict() d[‘first_name’] = ‘Richard’ print(‘I am {first_name} {last_name}’.format(**d)) Impresión, como se esperaba: I am Richard {last_name} Pero este fragmento de código no funcionará en Python3.6 +, devolviendo un KeyError al intentar obtener el last_name […]

¿Por qué alguna vez usaría algo más que% r en el formato de cadena de Python?

De vez en cuando uso el formato de cadena de Python. Esto se puede hacer así: print(‘int: %i. Float: %f. String: %s’ % (54, 34.434, ‘some text’)) Pero, esto también se puede hacer así: print(‘int: %r. Float: %r. String: %r’ % (54, 34.434, ‘some text’)) Además de usar% s: print(‘int: %s. Float: %s. String: %s’ […]

Python: escritura de múltiples diccionarios nesteds en una tabla en un archivo de texto separados por una pestaña

Soy nuevo en Python y estoy luchando con la impresión de varios diccionarios nesteds en una tabla separada por pestaña. Escribí un script para leer datos de un archivo de entrada y almacenar los datos en 3 diccionarios diferentes: d1 = {‘Ben’: {‘Skill’: ‘true’, ‘Magic’: ‘false’}, ‘Tom’: {‘Skill’: ‘true’, ‘Magic’: ‘true’}} d2 = {‘Ben’: {‘Strength’: […]

privilegios mysql de tela de python

Intentando establecer privilegios de usuario mysql con la tela. run(“mysql -u %s -p%s -e ‘grant all on %s.* to ‘%s’@’localhost’ identified by ‘PASSWORD'” % (user, dbpasswd, account)) Error TypeError: not enough arguments for format string Alguna idea ? Muchas gracias ! run(‘mysql -u %s -p%s -e “grant all on %s.* to ‘%s\’@\’localhost’ identified by ‘PASSWORD'”‘ […]

Obtener claves de plantilla

Me gustaría obtener una lista de todos los posibles argumentos de palabras clave que una plantilla de cadena podría usar en una sustitución. ¿Hay una manera de hacer esto que no sea re? Quiero hacer algo como esto: text=”$one is a $lonely $number.” keys = get_keys(text) # keys = (‘one’, ‘lonely’, ‘number’) Estoy escribiendo un […]

¿Cómo usar un punto en cadenas de formato Python?

Quiero formatear una cadena y poder usar el operador de puntos, para poder construir cadenas de plantillas que contengan, por ejemplo, {user.name} , {product.price} . Intenté esto: ‘Hello {user.name}’.format( {‘user’: { ‘name’: ‘Markus’ } } ) KeyError: ‘user’ ‘Hello {user.name}’.format( **{‘user’: { ‘name’: ‘Markus’ } } ) AttributeError: ‘dict’ object has no attribute ‘name’ ¿Hay […]