每当我使用这一行代码时,字母“ e”周围都会出现空格,我试图避免这种情况。即使这不是代码中的主要问题,也将有助于使其更好地阅读。
我试图重新调整代码的布局,但是没有成功
print("The value of", '\033[1m', '\033[4m', "e", '\033[0m', "is", math.e)
输出为
The value of e is 2.718281828459045
但是我更希望结果是
The value of e is 2.718281828459045
(“ e”周围只有1个空格)
(请注意,字母“ e”在输出中为粗体并带有下划线,以便正常工作。)
答案 0 :(得分:2)
import math
print("The value of {} is {}".format("e", math.e)
如果要包括粗体和下划线:
import math
print("The value of {}{}{}{} is {}".format('\033[1m', '\033[4m', "e", '\033[0m', math.e))
答案 1 :(得分:1)
为避免print()
在其参数之间打印空格,请使用sep
关键字:
print('No', 'Space', '!', sep='')
打印:
NoSpace!
但是,对于打印该字符串,将f
限定符用于字符串插值(需要Python 3.6+)和一个用于ANSI转义的库可能是有益的,例如blessed
:
import math
import blessed
t = blessed.Terminal()
import math
print(f"The value of {t.bold}{t.underline}e{t.normal} is {math.e}")
对于早期版本的Python,您可以使用.format(**locals())
构造,该构造(几乎)等效于f
字符串插值:
import math
import blessed
t = blessed.Terminal()
import math
print("The value of {t.bold}{t.underline}e{t.normal} is {math.e}".format(**locals()))
(编辑:添加了更多说明)。
答案 2 :(得分:1)