2010-08-30 6 views
19

Tôi đang cố gắng trình bày một số có các số 0 ở đầu và cuối để tổng chiều rộng là 7 bao gồm dấu thập phân. Ví dụ, tôi muốn đại diện cho "5" là "005.000". Dường như định dạng chuỗi sẽ cho phép tôi thực hiện một hoặc hai định dạng khác nhưng không cho phép cả hai. Đây là đầu ra tôi nhận được trong Ipython minh họa vấn đề của tôi:Tôi làm cách nào để sử dụng định dạng chuỗi để hiển thị cả số 0 và độ chính xác hàng đầu của 3?

In [1]: '%.3f'%5 
Out[1]: '5.000' 

In [2]: '%03.f'%5 
Out[2]: '005' 

In [3]: '%03.3f'%5 
Out[3]: '5.000' 

Dòng 1 và 2 đang làm chính xác những gì tôi mong đợi. Dòng 3 chỉ bỏ qua thực tế là tôi muốn số 0 đứng đầu. Bất kỳ ý tưởng? Cảm ơn!

Trả lời

36

Số đầu tiên là tổng số số chữ số, kể cả dấu thập phân.

>>> '%07.3f' % 5 
'005.000' 
+0

Làm cho cảm giác, cảm ơn! – cat

+0

dấu thập phân là một chữ số? –

+7

Điều này cũng tính dấu trừ! bleh, bất thường kém chất lượng cho Python IMHO – meawoppl

6

[Edit: Gah, đánh đập một lần nữa]

'%07.3F'%5 

Con số đầu tiên là toàn bộ chiều rộng lĩnh vực.