He estado trabajando en un juego de texto en Python, y he encontrado una instancia en la que quiero formatear una cadena de manera diferente en función de un conjunto de condiciones.Formato de cadena condicional de Python
Específicamente, quiero mostrar el texto que describe los elementos en una habitación. Quiero que se muestre esto, en la descripción de la sala, si y solo si el objeto objeto en cuestión está en la lista de elementos del objeto de la sala. Tal como está configurado, creo que simplemente concatenar cadenas basadas en condicionales no se emitirá como yo quiero, y sería mejor tener una cadena diferente para cada caso.
Mi pregunta es, ¿hay algún método pythonic para formatear cadenas basado en el resultado de un booleano condicional? Podría usar una estructura de bucle for, pero me preguntaba si había algo más fácil, similar a la expresión de un generador.
Busco algo similar a esto, en forma de cadena
num = [x for x in xrange(1,100) if x % 10 == 0]
Como ejemplo general de lo que quiero decir:
print "At least, that's what %s told me." %("he" if gender == "male", else: "she")
que se dan cuenta que este ejemplo no es válida en Python, pero muestra, en general, lo que estoy buscando. Me pregunto si hay alguna expresión válida para el formato de cadenas booleanas, similar a la anterior. Después de buscar un poco, no pude encontrar nada relacionado específicamente con el formato de cadena condicional. Encontré varias publicaciones en cadenas de formato en general, pero eso no es lo que estoy buscando.
Si algo así existe realmente, sería muy útil. También estoy abierto a cualquier método alternativo que pueda sugerirse. Gracias de antemano por cualquier ayuda que pueda brindar.
si quita la coma y el punto y coma se vuelve válido pytho n – yurib
Solución sin código: use 'ellos' (sé que eso no es lo que pidió + sé que esta pregunta es bastante antigua) – poxip
@poxip, que no es gramaticalmente correcto a menos que el pronombre se refiera a más de una persona. Al decir eso, creo que alguna guía de estilo se ha ido y ya aprobó esta construcción impensable, pero creo que es basura. – Bobort