DEV Community

Super Kai (Kazuya Ito)
Super Kai (Kazuya Ito)

Posted on • Edited on

String in Python (25)

Buy Me a Coffee

*Memos:

:[f][a][s][z][#][0][w][g][.p][t] can format a string as shown below. *Format Specification Mini-Language explains more details:

<Right-align a string with '>'>:

*It's like rjust().

v = "John Smith"

print(f'"{v:>20}"')
print(f'"{v: >20}"')
# "          John Smith"
#  ↑↑↑↑↑↑↑↑↑↑

print(f'"{v:?>20}"')
# "??????????John Smith"

print(f'"{v:?>17}"')
# "???????John Smith"

print(f'"{v:?>14}"')
# "????John Smith"

print(f'"{v:?>13}"')
# "???John Smith"

print(f'"{v:?>12}"')
# "??John Smith"

print(f'"{v:?>11}"')
# "?John Smith"

print(f'"{v:?>0}"')
print(f'"{v:?>}"')
print(f'"{v:>}"')
print(f'"{v:}"')
print(f'"{v}"')
# "John Smith"
Enter fullscreen mode Exit fullscreen mode
v = "   John Smith   "
   # ↑↑↑          ↑↑↑

print(f'"{v:?>0}"')
# "   John Smith   "
#  ↑↑↑          ↑↑↑

print(f'"{v:?>20}"')
# "????   John Smith   "
#      ↑↑↑          ↑↑↑
Enter fullscreen mode Exit fullscreen mode

<Right-align a string with '='>:

*It's like zfill().

v = 1234

print(f'"{v:=10}"')
print(f'"{v: =10}"')
print(f'"{v:= 10}"')
print(f'"{v: = 10}"')
print(f'"{v:=-10}"')
# "      1234"
#  ↑↑↑↑↑↑

print(f'"{v:=+10}"')
print(f'"{v:=+10}"')
# "+     1234"
#   ↑↑↑↑↑

print(f'"{v:=+010}"')
print(f'"{v:0=+10}"')
# "+000001234"

print(f'"{v:=+08}"')
print(f'"{v:0=+8}"')
# "+0001234"

print(f'"{v:=+06}"')
print(f'"{v:0=+6}"')
# "+01234"

print(f'"{v:=+05}"')
print(f'"{v:0=+5}"')
print(f'"{v:=+00}"')
print(f'"{v:0=+0}"')
print(f'"{v:=+0}"')
print(f'"{v:0=+}"')
print(f'"{v:=+}"')
# "+1234"

print(f'"{v:=0}"')
print(f'"{v:0=}"')
print(f'"{v:=}"')
print(f'"{v:}"')
print(f'"{v}"')
# "1234"
Enter fullscreen mode Exit fullscreen mode
v = -1234

print(f'"{v: =10}"')
print(f'"{v:= 10}"')
print(f'"{v: = 10}"')
print(f'"{v:=+10}"')
print(f'"{v:=-10}"')
# "-     1234"

print(f'"{v:=-010}"')
print(f'"{v:0=-10}"')
# "-000001234"

print(f'"{v:=-08}"')
print(f'"{v:0=-8}"')
# "-0001234"

print(f'"{v:=-06}"')
print(f'"{v:0=-6}"')
# "-01234"

print(f'"{v:=-05}"')
print(f'"{v:0=-5}"')
print(f'"{v:=-00}"')
print(f'"{v:0=-0}"')
print(f'"{v:=-}"')
print(f'"{v:0=-}"')
print(f'"{v:=}"')
print(f'"{v:0=}"')
print(f'"{v:}"')
print(f'"{v}"')
# "-1234"
Enter fullscreen mode Exit fullscreen mode

<Make a negative zero a positive zero>:

print(-0.0)        # -0.0
print(f'{-0.0:z}') # 0.0

print(-0.0-0.0j)        # (-0+0j)
print(f'{-0.0-0.0j:z}') # (0+0j)

print(0.0)
print(f'{0.0:z}')
# 0.0

print(-0.0+0.0j)
print(f'{-0.0+0.0j:z}')
print(0.0-0.0j)
print(f'{0.0-0.0j:z}')
# 0j
Enter fullscreen mode Exit fullscreen mode

Top comments (0)