es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo puedo rellenar un fstring con valores de un diccionario en Python?

Puedo usar fstrings con un diccionario:

mydict = {'foo': 'py', 'bar': 'thon'}
print(f"I am using {mydict['foo']}{mydict['bar']}")

Estoy usando python

También puedo rellenar cadenas:

f"{'Foo': <16} Bar"

‘Foo Bar’

Quiero poder rellenar una cadena que proviene de mi diccionario dentro de mi fstring.

He intentado:

f"{{mydict['foo']: <16}} {mydict['bar']}"

El error aquí es:

File ““, line 1
SyntaxError: f-string: single ‘}’ is not allowed

¿Es esto posible o tengo que agregar la cadena rellenada a mi diccionario antes de usarla?

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Es posible rellenar una cadena que proviene de un diccionario dentro de un f-string. Sin embargo, la sintaxis correcta debería ser:

    f"{mydict['foo']: <16} {mydict['bar']}"

    Ten en cuenta que no se necesitan las llaves que encierran las claves del diccionario. Además, los dos puntos seguidos del símbolo menor que y el número 16 indican que la cadena debe alinearse a la izquierda y rellenarse con espacios hasta un ancho total de 16 caracteres.

    No es necesario agregar la cadena rellenada al diccionario antes de usarla. La sintaxis anterior te permite aplicar el relleno directamente a la cadena obtenida del diccionario.

Comments are closed.