2015-11-07 6 views
5

Ecco il mio codice. Devo aggiungere un simbolo di percentuale alla fine della stringa print. Non riesco a capirlo.Come aggiungo un simbolo% al mio script Python

total = 0 
counter = 0 
while True: 
    score = int(input('Enter test score: ')) 
    if score == 0: 
     break 
    total += score 
    counter += 1 
average = total/counter 
print('The average is:', format(average, ',.3f')) 
+0

Cosa significa 'formato'? –

+0

Possibile duplicato? http://stackoverflow.com/questions/10678229/how-can-i-selectively-escape-percent-in-python-strings –

+0

@PeterWood E 'una [funzione built-in] (https://docs.python.org /3/library/functions.html#format). – poke

risposta

4
print('The average is: ' + format(average, ',.3f') + '%') 

?

+0

Questo * letteralmente * risponde alla domanda (anche se non mostra il modo migliore per risolvere il problema), quindi gli sto dando un upvote. – poke

+0

più uno per rispondere direttamente alla domanda. –

+0

Fantastico, grazie! Sono un principiante e questo aiuta molto! – spbiknut

6

Il modo probabilmente la cosa migliore sarebbe utilizzare solo il tipo di formato per cento:

format(average, '.1%') 

# or using string formatting: 
'{:.1%}'.format(average) 

Questo moltiplica già average per 100 e mostrerà anche un segno di percentuale alla fine.

>>> average = .123 
>>> print('The average is: {:.1%}'.format(average)) 
The average is: 12.3% 
Problemi correlati