- 题目说明
- 方法一:浮点数有效值
- 代码
- 示例一
- 示例二
- 示例三
- 示例四
- 方法二:取整取余
- 代码
- 示例一
- 示例二
- 示例三
- 笔记
假设变量a,b,其中b不等于0。
限定小数后有效位数为2,求a对于b的百分比。
def format_percentage(a, b):
p = 100 * a / b
if p == 0.0:
q = '0%'
else:
q = '%.2f%%' % p
return q
示例一
print(format_percentage(31.1333, 100))
# Output is 31.13%
示例二
print(format_percentage(31, 100))
# Output is 31.00%
示例三
print(format_percentage(9.00135, 100))
# Output is 9.00%
示例四
print(format_percentage(0.00926, 100))
# Output is 0.00%
方法二:取整取余
代码
def format_percentage(a, b):
p = int(10000 * a / b)
p1 = p // 100
p2 = p % 100
q = f'{p1}.{p2}%' if p2 != 0 else f'{p1}%'
return q
示例一
print(format_percentage(49.0135, 100))
# Output is 49.01%
示例二
print(format_percentage(15, 100))
# Output is 15%
示例三
print(format_percentage(1.00135, 100))
# Output is 1%
笔记
在强制要求输出中体现精度的情况下,选择方法一。
顾及输出视觉感官上的体验,考虑方法二。
两者形式上区别在于输出百分比小数点后面为0的情况。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)