Python将7位值四舍五入为最接近的值10
Python将7位值四舍五入为最接近的值10,python,Python,我一直在写一个程序,输入一个7位数的代码 -将其拆分为一个列表 -将每个奇数n值数字乘以1、3、5、7,例如乘以3 -计算新整数列表的总和。 -将此总和四舍五入到最接近的值10 该代码如下所示: import math int_input = input("Please enter your 7 digit number >> ") int_str = list(map(int,str(int_input))) print (int_str) mod_list = [item *
我一直在写一个程序,输入一个7位数的代码
-将其拆分为一个列表
-将每个奇数
n
值数字乘以1、3、5、7,例如乘以3
-计算新整数列表的总和。
-将此总和四舍五入到最接近的值10 该代码如下所示:
import math
int_input = input("Please enter your 7 digit number >> ")
int_str = list(map(int,str(int_input)))
print (int_str)
mod_list = [item * 3 if int_str % 2 == 0 else item for int_str, item in enumerate(int_str)]
print (mod_list)
tot_list = print (sum(mod_list))
print((tot_list + 9) // 10 * 10)
对于值1123456
,我似乎收到了此错误:
File "test.py", line 10, in <module>
print((tot_list + 9) // 10 * 10)
TypeError: unsupported operand type(s) for +: 'NoneType' and 'int'
有人能帮忙吗?
谢谢
Louis.您在
tot\u list=print(sum(mod\u list))
中有一个伪打印print
不返回值,因此tot_list
为None
。所以把它分成两行:tot_list=sum(mod_list)
&print(tot_list)
@AChampion不打印48
?它打印48,但不返回分配给tot_list
的值,例如print(打印(5))
将打印5
None
而不是5
5
。稍微偏离主题,但您可以使用四舍五入(n,-1)
将整数n
四舍五入到最接近的10倍数。
Please enter your 7 digit number >> 1123456
[1, 1, 2, 3, 4, 5, 6]
[3, 1, 6, 3, 12, 5, 18]
48
THEN THE ERROR FROM ABOVE