I want to print a staircase like pattern using .format() method. I tried this,
for i in range(6, 0, -1):
print("{0:>"+str(i)+"}".format("#"))
But it gave me following error :
ValueError: Single '}' encountered in format string
Basically the idea is to print
#
#
#
#
#
#
with code that looks similar to,
for i in range(6, 0, -1):
print("{0:>i}".format("#"))
Much simpler : instead of concatenating strings, you can use format again
for i in range(6, 0, -1):
print("{0:>{1}}".format("#", i))
Try it in idle:
>>> for i in range(6, 0, -1): print("{0:>{1}}".format("#", i))
#
#
#
#
#
#
Or even fstring (as Florian Brucker suggested - I'm not an fstrings lover, but it would be incomplete to ignore them)
for i in range(6, 0, -1):
print(f"{'#':>{i}}")
in idle :
>>> for i in range(6, 0, -1): print(f"{'#':>{i}}")
#
#
#
#
#
#
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