I was wondering if it was possible to align a print statement in Python (newest version). For example:
print ("hello world")
would appear on the user's screen on the left side, so can i make it centre-aligned instead?
Thank you so much for your help!
= 80 (column) x 30 ( width)
To center align a text in Python, we use the Python's string center() function. Python center() is a string class function that is used to position a string by padding it with a specified character.
On the Layout tab, under Page Setup, click Margins. Click Custom Margins, and then adjust the margins as you want them to appear. To center the sheet on the page when you print, under Center on page, select Horizontally and Vertically.
Numbers can also be left, right, or centre aligned using python format() method. For displaying a number with left alignment, we use the “:<n” symbol inside the placeholder in the format() method.
First, use os.get_terminal_size()
function to get the console's width(so you don't need to know your console before):
>>> import os
>>> os.get_terminal_size()
os.terminal_size(columns=80, lines=24)
>>> os.get_terminal_size().columns
80
>>> os.get_terminal_size().columns # after I changed my console's width
97
>>>
Then, we can use str.center()
:
>>> import os
>>> print("hello world".center(os.get_terminal_size().columns))
hello world
>>>
So the clear code looks like:
import os
width = os.get_terminal_size().columns
print("hello world".center(width))
Knowing the console width, you can also print centered using format
:
# console width is 50
print "{: ^50s}".format("foo")
will print 'foo' in the middle of a 50-column console.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With