print的format格式问题,{:.2f}和{:2d}的差别报错
print("以年数判断闰年")
Nian = int(input("输入年数:"))
if Nian % 4 == 0:
if Nian % 100 == 0:
if Nian % 400 == 0:
print("{:.2d}是世纪闰年,闰年共有366\
天(1月~12月分别为31天、29天、31天、30天、31天、3\
0天、31天、31天、30天、31天、30天、31天)。".format(Nian))
else:
print("不是闰年")
else:
print("{:.2d}是闰年,闰年共有366天(1月~12月\
分别为31天、29天、31天、30天、31天、30天、31天、31天、30天、\
31天、30天、31天)".format(Nian))
else:
print("不是闰年")
以年数判断闰年
输入年数:2000
Traceback (most recent call last):
File "C:\Users\Administrator\Desktop\exception.py", line 10, in
0天、31天、31天、30天、31天、30天、31天)。".format(Nian))
ValueError: Precision not allowed in integer format specifier
将{:.2d}改成{:.2f}会成功,但为什么?
正常输出:
2000.00是世纪闰年,闰年共有366天(1月~12月分别为)。
ValueError: Precision not allowed in integer format specifier
整数格式说明符中不允许精度,即整数类型的变量不能指定小数点位置
你的2d前面多了个点吧!{:2d}这样是正确的
有帮助的话采纳一下哦!