2012-03-26 43 views
7

Tôi đang cố gắng để có được một số HTML để làm việc với mã python của tôi. Tôi nhận được mã này cho một trong các mã CSS của mình.Python và HTML '% Operator'

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

Tuy nhiên, khi tôi cố gắng truy cập trang, tôi nhận được lỗi sau.

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

Tôi nghĩ rằng điều này gây rối với % vì tôi sử dụng nó ở nơi khác trong HTML.

Mọi trợ giúp sẽ được đánh giá cao.

+1

Bạn đang "truy cập" trang đó như thế nào? –

+0

OK, bạn đã thử nghiệm những gì sẽ xảy ra nếu bạn loại bỏ '%' (thay thế nó bằng 'px' hoặc bất cứ điều gì). Lỗi có biến mất không? –

Trả lời

19

Nếu bạn muốn sử dụng toán tử định dạng %, bạn cần phải thoát khỏi các ký tự % của mình.

Vì vậy, css bạn nên đọc:

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

để thay thế.

Bạn nên sử dụng phương pháp .format() của chuỗi thay vì đó là cách thích hợp hơn. Xem PEP 3101 để biết lý do.

Vì vậy, thay vì

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

làm

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

và thay đổi %s 's trong chuỗi của bạn để {0}{1}. Tất nhiên bạn cũng cần phải thoát khỏi số {} trong trường hợp này.

+0

Điều này có nghĩa là gì? – user432584920684

+5

Câu trả lời của bạn là chính xác về mặt kỹ thuật, điều mà chúng ta đều biết là loại tốt nhất chính xác. – cha0site

+0

Cảm ơn bạn rất nhiều vì sự giúp đỡ của bạn. – user432584920684

Các vấn đề liên quan