发布网友 发布时间:2022-04-24 04:31
共3个回答
热心网友 时间:2022-04-07 06:27
f = lambda x, n: round(x, n - len(str(int(x))));
定义了一个方法f,用来实现你所说的功能。
输入:
f(123.4567, 8)
输出:
123.45678
输入:
f(1.234567, 8)
输出:
1.2345679000000001
f接收2个参数,第一个参数是要求有效位数的数字,第二个参数是设置有效位数。第二次输出中的数字不够准确,这跟python处理小数的方式有关,如果想要准确的数字可以使用python decimal类。或者用python3k
扩展资料
#include <stdio.h>
#define C "C Programming"int main(void)
{
int a=12345;float b=5.12345678;
char e,d,f;
scanf("%c %c %c",&e,&d,&f);
printf("int is:%d\n",a);
printf("float is:%f\n",b);
printf("char is:%s\n",C);return 0;
}
1,对于浮点数
a=1.36852
a=round(a,2)
print a
#结果1.36
2,对于整数
from decimal import Decimal
a=1
a=Decimal(a).quantize(Decimal('0.00'))
print a
#结果1.00
3,通用方法
a=1
a=("%.2f" % a)
print a
#结果1.00
参考资料:百度百科 Python
百度百科 printf
热心网友 时间:2022-04-07 07:45
可以用round函数,round( x[, n]) ,对x保留四舍五入到n位小数。
如
a=3.251551
round(a,2)可以把a保留二位小数
热心网友 时间:2022-04-07 09:20
%0.2f