提问人:sakrockzx 提问时间:7/18/2023 最后编辑:InSyncsakrockzx 更新时间:7/18/2023 访问量:58
如何在python中将小数点四舍五入为一位数?
How do I round the decimals to one digit in python?
问:
我写了一个代码,我必须用它来复制一个语句 100 次。在这种情况下,变量“度”必须迭代 3.6。我得到的不是带有 1 个十进制数字的十进制数,而是得到如下内容:
95%{background-color: linear-gradient(342.0000000000002deg, red, blue)}
96%{background-color: linear-gradient(345.60000000000025deg, red, blue)}
97%{background-color: linear-gradient(349.2000000000003deg, red, blue)}
98%{background-color: linear-gradient(352.8000000000003deg, red, blue)}
这是我的代码:
degrees = 0
percent = 0
for i in range(101):
print(str(percent) + "%{background-color: linear-gradient(" + str(degrees) + "deg, red, blue)}")
percent += 1
degrees += 3.6
我希望代码返回带有一个小数点的结果。
答:
1赞
Xiaomin Wu
7/18/2023
#1
您可以像这样使用 F 格式的字符串
degrees = 0
percent = 0
for i in range(101):
print(f"{percent}%{{background-color: linear-gradient({degrees:.1f}deg, red, blue)}}")
percent += 1
degrees += 3.6
输出为
0%{background-color: linear-gradient(0.0deg, red, blue)}
1%{background-color: linear-gradient(3.6deg, red, blue)}
2%{background-color: linear-gradient(7.2deg, red, blue)}
3%{background-color: linear-gradient(10.8deg, red, blue)}
4%{background-color: linear-gradient(14.4deg, red, blue)}
5%{background-color: linear-gradient(18.0deg, red, blue)}
6%{background-color: linear-gradient(21.6deg, red, blue)}
7%{background-color: linear-gradient(25.2deg, red, blue)}
.......
0赞
huangkaiyi
7/18/2023
#2
您可以使用 round(number, number digit)
for i in range(101):
print(str(percent) + "%{background-color: linear-gradient(" + str(round(degrees,1)) + "deg, red, blue)}")
如果十进制数严格优于 5,则它将四舍五入到下一个 (ceil) 整数,否则将四舍五入到下限 (floor)。
print(round(342.14,1)) # 342.1
print(round(342.15,1)) # 342.1
print(round(342.16,1)) # 342.2
评论
round(degrees, 1)
round(1.2, 1)
linear-gradient()
background-color