Booléen chaîne en minuscules
Pouvez le str.format()
méthode d'impression boolean arguments sans majuscule cordes?
Je ne peux pas utiliser str(myVar).lower()
comme argument de format, parce que je veux préserver le cas de l'lettres quand myVar
n'est pas un booléen.
S'il vous plaît ne postez pas de solutions avec conditionnelle vérifie les valeurs de la variable.
Tous je suis intéressé (e) est dans la possibilité d'écrire le texte suivant:
"Bla bla bla {}".format(myVar)
de sorte que la sortie devient "Bla bla bla true"
quand myVar == True
et "Bla bla bla false"
quand myVar == false
Est-il une raison particulière pour laquelle vous souhaitez minuscules booléens? Est-ce JSON-liés, par exemple?
Non,
Non,
str.format()
ne va pas transformer le cas de valeurs booléennes; vous devez le faire manuellement. Pourquoi avez-vous besoin?if mybool: str = 'true' else: str = 'false'
boolval = 'true' if mybool else 'false'
. Ou tout simplement str(mybool).lower()
.."ftarlusee"[myVar::2]
pour plus de plaisir 🙂OriginalL'auteur tubafranz | 2014-08-18
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser une expression comme ce
isinstance(myVar, bool)
est préféré, même sibool
ne peut pas être sous-classé plus loin.OriginalL'auteur John La Rooy
Essayer un lambda que vous pouvez appeler:
def f(x): return str(x).lower() if isinstance(x, bool) else x
au lieu de lambda python.org/dev/peps/pep-0008/#programming-recommendationsOriginalL'auteur Burhan Khalid