Python 如何打印';%';使用字符串格式签名?

Python 如何打印';%';使用字符串格式签名?,python,printing,python-2.x,percentage,Python,Printing,Python 2.x,Percentage,我已经做了一个小脚本来计算百分比;但是,我希望在打印的消息中包含% 一开始就试过了-没用 oFile.write(“百分比:%s%”\n“%percent”) 然后我尝试了“百分比:%s”%\n“%percent”,但没有成功 我希望输出为: 百分比:x% 我一直在 TypeError:在字符串格式化过程中并非所有参数都已转换 要打印%符号,您需要使用另一个%符号“转义”它: percent = 12 print "Percentage: %s %%\n" % percent # Note

我已经做了一个小脚本来计算百分比;但是,我希望在打印的消息中包含
%

一开始就试过了-没用

oFile.write(“百分比:%s%”\n“%percent”)
然后我尝试了
“百分比:%s”%\n“%percent”
,但没有成功

我希望输出为:

百分比:x%
我一直在

TypeError:在字符串格式化过程中并非所有参数都已转换

要打印
%
符号,您需要使用另一个
%
符号“转义”它:

percent = 12
print "Percentage: %s %%\n" % percent  # Note the double % sign
>>> Percentage: 12 %
或者使用更优雅的
format()
函数

percent = 12
print "Percentage: {}%".format(percent)
4年后编辑

现在在Python3x
print()
中需要括号

percent = 12
print ("Percentage: {}%".format(percent))

新的Python3方法是使用格式字符串

percent = 12
print("Percentage: {0} %\n".format(percent))
>>> Percentage: 12 %
Python>2.6也支持这一点

请参阅此处的文档:

format()
更优雅,但模符号似乎更快

-表明模运算快约30%

x = 0.25
y = -0.25
print("\nOriginal Number: ", x)
print("Formatted Number with percentage: "+"{:.2%}".format(x));
print("Original Number: ", y)
print("Formatted Number with percentage: "+"{:.2%}".format(y));
print()
样本输出:

Original Number:  0.25                                                                                        
Formatted Number with percentage: 25.00%                                                                      
Original Number:  -0.25                                                                                       
Formatted Number with percentage: -25.00% 
有助于正确设置百分比值的格式

+++

使用百分比的ascii值-即37

print( '12' + str(chr(37)) )

请注意,内部不需要
0
bracelets@howaboutNO
0
是必需的,如果您使用的是Py2.6,那么它的字符数比漂亮的模略多,而且我的懒惰的第一世界不喜欢键入字符来获得结果@OliverW的可能重复项。注意:是的,但该名称和措辞非常不清楚,这是我在课堂上做的一个利息计算器,这是输出:利率(APR):5%,请在你的答案中加上解释。
print("Interest Rate (APR): " , format(APR, '.0f'),'%')