Domanda Come concatenare un booleano a una stringa in Python?


Voglio realizzare quanto segue

answer = True
myvar = "the answer is " + answer

e il valore di myvar è "la risposta è vera". Sono abbastanza sicuro che tu possa farlo in Java.


44
2018-05-09 04:21


origine


risposte:


answer = True
myvar = "the answer is " + str(answer)

Python non esegue il cast implicito, poiché la trasmissione implicita può mascherare errori logici critici. Basta lanciare una risposta a una stringa per ottenere la sua rappresentazione di stringa ("True"), o utilizzare la formattazione di stringhe in questo modo:

myvar = "the answer is %s" % answer

Si noti che la risposta deve essere impostata su True (la maiuscola è importante).


87
2018-05-09 04:25



Il modo consigliato è di lasciare str.format gestire il casting (docs). Metodi con %s la sostituzione può essere deprecata alla fine (vedi PEP3101).

>>> answer = True
>>> myvar = "the answer is {}".format(answer)
>>> print myvar
the answer is True

9
2018-05-09 04:30



answer = True
myvar = "the answer is " + str(answer)

o

myvar = "the answer is %s" % answer

7
2018-05-09 04:23



Usando le cosiddette stringhe f:

answer = True
myvar = f"the answer is {answer}"

Quindi se lo faccio

print(myvar)

Io metterò:

the answer is True

Mi piacciono le stringhe perché non ci si deve preoccupare dell'ordine in cui le variabili appariranno nel testo stampato, il che aiuta nel caso in cui si abbiano più variabili da stampare come stringhe.


1
2018-03-21 18:56