Python:使用float,右对齐格式化字符串

时间:2017-10-16 14:42:39

标签: python

我想将str和float的组合对齐到右侧。在我的例子中," Tax = $"是一个字符串,税是一个浮动。我有两种方法可以实现这一目标。

print(("Tax = $%.2f" % tax).rjust(70))
print("%66s%.2f" % ("Tax = $",tax))

输出如下:

                                                       Tax = $0.42

他们两个都在工作。但我认为他们不够好。这些代码很麻烦。一开始,我写了类似

的内容
print("Tax = $%.2f" % tax)

我试图在这一行中放置一个右对齐标记,但​​我不知道我应该把它放在哪里。

有没有一种巧妙的方法可以做到这一点?

谢谢,

1 个答案:

答案 0 :(得分:0)

现在在python 3.6和更高版本中提供了f字符串,这是另一种查看方式:

import tkinter as tk class windowLib: def __init__(self): self.root = tk.Tk() self.root.geometry('700x500') self.root.title('UnLibs') self.root['background'] = '#91a8e3' self.start_Btn = tk.Button(self.root, command=lib_window(), text="PLAY", foreground="white", highlightbackground="red", font=("Helvetica", 40)) self.welcome_Label = tk.Label(self.root, text="Welcome to UnLibs", font=("Helvetica", 50), bg="#91a8e3", fg="white") self.start_Btn.pack(side="bottom", padx=10, pady=50) self.welcome_Label.pack(side="top", padx=0, pady=150) self.root.mainloop() game_window = tk.Toplevel(windowLib) if __name__ == '__main__': windowLib()

使用临时变量:

print(f"{(f'Tax = ${tax:.2f}'):>70}")

我用来查找如何正确对齐的资源: https://medium.com/@NirantK/best-of-python3-6-f-strings-41f9154983e