python 整数运算不科学计数法输出—— ‘/’ 和 '//'的区别
今天在做大整数除法,都是整除运算,没有小数点。
所以为了偷懒,我就用‘/’代替了‘//’符号,结果就输出这样了:
第 1 个解: -2.5398977212130686e+74
第 2 个解: -2.5398977212130686e+74
第 3 个解: -2.5398977212130686e+74
第 4 个解: -2.5398977212130686e+74
第 5 个解: -2.5398977212130686e+74
第 6 个解: -2.5398977212130686e+74
第 7 个解: -2.5398977212130686e+74
查了很多方法,包括numpy库的办法,可惜没有用:
import numpy as np
np.set_printoptions(suppress=True)
还有print输出整数,也没有用
print('%d', a)
强制转换也没有用
print(int(a))
结论
最后我发现把算式中的‘/’全改成‘//’就好了
第 1 个解: -253989772121306841075212422259739922416296267697871429081006477233319892640
第 2 个解: -253989772121306841075212422259176991107609750120260056450305724953156705783
第 3 个解: -253989772121306841075212422258614059798923232542648683819604972672993518926
第 4 个解: -253989772121306841075212422258051128490236714965037311188904220392830332069
第 5 个解: -253989772121306841075212422257488197181550197387425938558203468112667145212
第 6 个解: -253989772121306841075212422256925265872863679809814565927502715832503958355
第 7 个解: -253989772121306841075212422256362334564177162232203193296801963552340771498
这说明只要使用’/‘,python便会强制转换为浮点型,所以如果要整数运算,还是老老实实写‘//’吧