2012-03-26 12 views
7

Sto cercando di ottenere un codice HTML per lavorare con il mio codice Python. Ho questo per uno dei miei codici CSS.Python e HTML '% Operator'

#footerBar { 
height: 40px; 
background: red; 
position: fixed; 
bottom: 0; 
width: 100%; 
z-index: -1; 
} 

Tuttavia, quando provo ad accedere alla pagina, ottengo il seguente errore.

File "projv2.py", line 151, in welcome 
</form>""" %(retrievedFullName, retrievedUserName,) 
ValueError: unsupported format character ';' (0x3b) at index 1118 

Penso che sia scherzi con il % da quando faccio uso che in altre parti del codice HTML.

Qualsiasi aiuto sarebbe molto apprezzato.

+1

Come stai "accedendo" a quella pagina? –

+0

OK, hai provato cosa succede se togli il '%' (sostituendolo con 'px' o altro). L'errore va via? –

risposta

19

Se si desidera utilizzare l'operatore di formattazione %, è necessario sfuggire ai caratteri %.

Così il vostro css dovrebbe leggere:

#footerBar { 
height: 40px; 
background: red; 
position: fixed; 
bottom: 0; 
width: 100%%; 
z-index: -1; 
} 

invece.

È preferibile utilizzare il metodo della stringa .format() invece come è il modo preferibile. Vedi PEP 3101 per la logica.

Così, invece di

...""" % (retrievedFullName, retrievedUserName,) 

fare

...""".format(retrievedFullName, retrievedUserName) 

e modificare le %s 's nella stringa di {0} e {1}. Ovviamente anche in questo caso devi sfuggire al tuo {}.

+0

Cosa significa? – user432584920684

+5

La tua risposta è tecnicamente corretta, che come tutti sappiamo è il miglior tipo di corretto. – cha0site

+0

Grazie mille per il vostro aiuto. – user432584920684