数字可能非常大
n = input()
print(n) #gives output in scientific notation
如何获得整个号码?
PS:python的新手
编辑:
s = (input()) #100000000000000000000000000000000000000
if int(s[-1])%2 == 0:
print (2)
print (2)
print (int(s)/2) #5e+37
答案 0 :(得分:2)
在Python 3中,如果要进行整数除法,请使用//
运算符:
print(int(s) // 2)
除法的结果将是整数,不会以科学记数法打印出来。
答案 1 :(得分:0)
您可以使用{:2E}
格式代码将大数字格式化为科学记数法。例如:
>>> "{:.2E}".format(100000000000000000000000000000000000000)
'1.00E+38'
另一种变体:
>>> n = 100000000000000000000000000000000000000
>>> '%2E' % n
'1.000000E+38'
有关从输出中删除多余零的讨论,请参阅this question。