C有printf("%Xd", Y);
,它只是打印整數X並使其在控制檯窗口中佔用Y空間。如何打印一個具有一定數量的空格的整數?
例如:
printf("%3d", 10);
console: " 10"`
printf("%5d", 5);
console: " 5"
如何在Python 3使用?
C有printf("%Xd", Y);
,它只是打印整數X並使其在控制檯窗口中佔用Y空間。如何打印一個具有一定數量的空格的整數?
例如:
printf("%3d", 10);
console: " 10"`
printf("%5d", 5);
console: " 5"
如何在Python 3使用?
這個print("{0:10d}".format(5))
將在9個空白後打印5個。 有關Python中格式化的更多參考,請參閱this。
我會做這樣的事情:
>>> print(10*' ',10)
10
>>> print(5*' ',5)
5
>>> x=5
>>> print(x*' ',x)
5
>>>
這些蟒蛇方法把它無論是在一個字符串,pad
左側或右側,使其的chars
一組號碼只要你想打印到控制檯。
舉個例子與.rjust
:
num = 1234
chars = 9
print(str(num).rjust(chars))
這將輸出:
" 1234"
或使用.ljust
會給你:
"1234 "
有一點要注意的是,.ljust
和.rjust
顯着不同在int
之前或之後打印一組空格' '
,因爲它們允許您指定總數字符串的長度而不是之前的空白。例如在使用這些方法打印表格時,這是一個關鍵的事情,可以使列設置爲寬度使其整齊。而簡單地增加空間預先將導致不同寬度作爲對integers
的digits
會改變使總串長度來改變使寬度變化的數量。
當然,如果你願意,你仍然可以指定總字符串的長度,然後計算出有多少空間需要之前放置或int
之後。
所以.rjust
可能是這樣的:
num = 1234
chars = 9
print(' ' * (chars - len(str(num))) + str(num))
注意到,在這裏,我有級聯的num
作爲字符串到與+
空白,而不是在打印語句作爲逗號用逗號將在兩者之間增加一個空間。
和.ljust
將是相同的,但num
第一印刷:
print(str(num) + ' ' * (chars - len(str(num))))
然而,所有這些工作是不必要的,看起來非常凌亂考慮你可以使用原來的兩個內置的Python方法:)
你可以試試這個
x = " "
y = 10
print((x*5), y)
而且你的輸出就會
10
將x指定給一個帶有空格的字符串,然後在打印時,只需將字符串與空格相乘y之前所需的空格數。
print('%10d'%20) – danche
您可以在以下url中看到解決方案:https://stackoverflow.com/questions/12450704/how-to-print-spaces-in-python – Toandd