【问题标题】:Working with numbers in Python在 Python 中处理数字
【发布时间】:2013-10-25 14:29:36
【问题描述】:

你好。我对 Python 和一般编程非常陌生。

我有 CSV 文件中的 3 列

X,CH1,CH2,  
Second,Volt,Volt,  
2.66400e-02,4.00e-03,1.04e-03,  
-2.66360e-02,4.00e-03,7.20e-04,  
-2.66320e-02,4.00e-03,5.60e-04,  
-2.66280e-02,4.00e-03,3.20e-04,  
-2.66240e-02,4.00e-03,8.00e-05,  
-2.66200e-02,4.00e-03,-2.40e-04,  
-2.66160e-02,4.00e-03,-5.60e-04,    
-2.66120e-02,4.00e-03,-7.20e-04,  
-2.66080e-02,4.00e-03,-1.04e-03,   ***for example.***

我正在使用

with open('maximum.csv', 'rb') as f:
    reader = csv.reader(f, delimiter=',')
    for _ in xrange(2):
       next(f)

跳过前两行,因为这只是文本,然后

for row in reader:
  x=(float(row[2]))
  print(x)

给我

0.00104  
0.00072  
0.00056  
0.00032  
8e-05  
-0.00024  
-0.00056  
-0.00072  
-0.00104

那么问题来了:

我应该写什么,这样它会给我一个整数而不是小数,比如

104  
72  
56  
24  
8  
24  
56  
72  
104  

PS 我不想仅仅乘以 10^5

谢谢

【问题讨论】:

  • 为什么你不想倍增?这是最简单、最合适的方法。
  • 您的单位是伏特,您想更改单位。最困难的事情是多重。我自己可能会乘以1e6,这样我就可以处理微伏,但如果你想要它在 10 微伏中也可以。

标签: python csv numbers decimal


【解决方案1】:

你必须乘以 10 ^ 5 因为你实际上想要更大的数字。

然后应用函数 int() 并得到 104 而不是 104.0

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-01-22
    • 2020-02-27
    • 2010-10-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多