如何删除python中的额外空间?

时间:2017-04-26 01:08:18

标签: python whitespace

这是我的一些python代码:

my_fancy_variable = input('Choose a color to paint the wall:\n') 

if my_fancy_variable == 'red':
    print(('Cost of purchasing red paint:\n$'),math.ceil(paint_needed) * 35)
elif my_fancy_variable == 'blue':
    print(('Cost of purchasing blue paint:\n$'),math.ceil(paint_needed) * 25)
elif my_fancy_variable == 'green':
    print(('Cost of purchasing green paint:\n$'),math.ceil(paint_needed) * 23)

我只是想摆脱“$”和“105。

之间的空间

还有更多代码,但基本上我会得到以下结果: Cost of purchasing red paint: $ 105

谢谢!

2 个答案:

答案 0 :(得分:1)

print函数有一个默认参数sep,它是给予print函数的每个参数之间的分隔符。

默认情况下,它设置为空格。您可以轻松地更改它,(在您的情况下为空),如下所示:

print('Cost of paint: $', math.ceil(paint_needed), sep='')
# Cost of paint: $150

如果你想用换行符分隔每个参数,你可以这样做:

print('Cost of paint: $', math.ceil(paint_needed), sep='\n')
# Cost of paint: $
# 150

sep可以是您需要(或想要)的任何字符串值。

答案 1 :(得分:0)

我会使用格式字符串来表示易读性:

f"Cost of purchasing blue paint: ${math.ceil(paint_needed) * 25}"

这里的另一点是你要添加多少ifs?靛蓝/橙等等。

colours = {
   'red': "$35",
   'blue': "$25",
   'green': "$23"
}

cost = colours.get(my_fancy_variable, "Unknown cost")

print(f"Cost of purchasing {my_fancy_variable} is {cost}")