当前位置: 首页 > 面试题库 >

Python-科学计数法中的固定指数?

吕承福
2023-03-14
问题内容

考虑以下Python代码段:

for ix in [0.02, 0.2, 2, 20, 200, 2000]:
  iss=str(ix) + "e9"
  isf=float(iss)
  print(iss + "\t=> " + ("%04.03e" % isf ) + " (" + str(isf) + ")")

它生成以下输出:

0.02e9  => 2.000e+07 (20000000.0)
0.2e9   => 2.000e+08 (200000000.0)
2e9     => 2.000e+09 (2000000000.0)
20e9    => 2.000e+10 (20000000000.0)
200e9   => 2.000e+11 (2e+11)
2000e9  => 2.000e+12 (2e+12)

我的问题是-是否可以以某种方式“返回”?那是:

2.000e+07 => 0.02e9 
2.000e+08 => 0.2e9
2.000e+09 => 2e9    
2.000e+10 => 20e9   
2.000e+11 => 200e9  
2.000e+12 => 2000e9

…我要指定指数为“
e+09”;然后我在这个假设函数上抛出的任何数字都返回该指数中的数字值?在每种情况下是否都可以为整个和小数部分都指定零填充?(即000.0200e9020.0000e9)?


问题答案:

自己进行格式化(请参阅格式化规范的迷你语言):

for ix in [.02e9,.2e9,2e9,20e9,200e9,2000e9]:
    print('{:.3e} => {:0=8.3f}e9'.format(ix,ix/1e9))

输出量

2.000e+07 => 0000.020e9
2.000e+08 => 0000.200e9
2.000e+09 => 0002.000e9
2.000e+10 => 0020.000e9
2.000e+11 => 0200.000e9
2.000e+12 => 2000.000e9

说明

{:0=8.3f} 表示“零填充,在符号和数字之间填充,字段总宽度为8,在小数点后3个位,定点格式”。



 类似资料:
  • 问题内容: 这是我的代码: 我的商显示为 有什么方法可以压制科学记数法并使其显示为 ?我将使用结果作为字符串。 问题答案: 但是你需要自己管理精度。例如,

  • Numpy 是 Python 科学工具栈的基础。它的目的很简单:在一个内存块上实现针对多个条目(items)的高效操作。了解它的工作细节有助于有效的使用它的灵活性,使用有用的快捷方式,基于它构建新的工作。

  • 本文向大家介绍python科学计算之numpy——ufunc函数用法,包括了python科学计算之numpy——ufunc函数用法的使用技巧和注意事项,需要的朋友参考一下 写在前面 ufunc是universal function的缩写,意思是这些函数能够作用于narray对象的每一个元素上,而不是针对narray对象操作,numpy提供了大量的ufunc的函数。这些函数在对narray进行运算的

  • 数据是新的石油。该声明显示了如何通过捕获,存储和分析满足各种需求的数据来驱动每个现代IT系统。无论是为商业做出决定,预测天气,研究生物学中的蛋白质结构还是设计营销活动。

  • 问题内容: 我该如何显示: 十进制(‘40800000000.00000000000000’)为‘4.08E + 10’? 我已经试过了: 但是它有那些额外的0。 问题答案: 在您的“ 40800000000.00000000000000”中,有许多更重要的零,其含义与任何其他数字相同。这就是为什么您必须明确告诉您要在哪里停止的原因。 如果要自动删除所有尾随零,可以尝试:

  • Jupyter Notebooks 你可以按[shift] + [Enter]或按菜单中的“播放”按钮来运行单元格。 在function(后面按[shift] + [tab],可以获得函数或对象的帮助。 你还可以通过执行function?获得帮助。 NumPy 数组 操作numpy数组是 Python 机器学习(或者,实际上是任何类型的科学计算)的重要部分。 对大多数人来说,这可能是一个简短的回顾