编程语言
首页 > 编程语言> > 如何强制Python保持整数不受科学记数法的影响

如何强制Python保持整数不受科学记数法的影响

作者:互联网

我试图在Python 3.2中编写一个加密短语然后解密的方法.问题是数字是如此之大,以至于当Python对它们进行数学运算时,它会立即将其转换为科学记数法.由于我的代码要求所有数字都能用于科学记数法,所以这没用.

我有的是:

coded = ((eval(input(':'))+1213633288469888484)/2)+1042

基本上,我只是从用户那里得到一个数字并做一些数学计算.

我尝试过format()和其他一些东西,但是我无法让它们工作.

编辑:我只使用整数.

解决方法:

在python3中,’/’进行实分(例如浮点).要获得整数除法,您需要使用//.换句话说100/2产生50.0(浮动)而100 // 2产生50(整数)

您的代码可能需要更改为:

coded = ((eval(input(':'))+1213633288469888484)//2)+1042

但是,作为警示故事,您可能需要考虑使用int而不是eval:

coded = ((int(input(':'))+1213633288469888484)//2)+1042

标签:scientific-notation,python,floating-point,format,fixed-point
来源: https://codeday.me/bug/20190729/1571096.html