2017-07-31 71 views
-1

我是python的新手,我似乎无法得到以下结果。 作为标题状态,我有一个列表,我想将数字从列表中移出并与其他数字相减。 我试图从该网站很多方法,但他们似乎都给出错误从列表中转换两个或多个数字,以便可以在python中相互减去它们

"ValueError: invalid literal for int() with base 10: '4.61'"

(这是从列表中nummers之一)。我的代码如下:

with open("kurser.txt") as kurser: 
    kurslista_ericsson = [] 
    radnr = 0 
    for rad in kurser: 
     if radnr < 67: 
      info = rad.strip().split("\t") 
      kurs = info[1] 
      kurslista_ericsson.append(kurs) 
      radnr = radnr + 1 
a = int(kurslista_ericsson[36]) 
b = int(kurslista_ericsson[66]) 
kursutveckling = b - a 
print(kursutveckling) 

谢谢你提前和对不起,如果我不清楚任何东西,它的我第一次在这里发帖。

+0

这是因为你的输入数据包含浮点数......如果你想循环,首先解析为'float'然后用int'截断' –

回答

0

4.61是一个浮点数不是整数。

所以,你应该代之以:

a = float(kurslista_ericsson[36]) 
b = float(kurslista_ericsson[66]) 

如果他们的列表(而不是字符串)内存储为数字形式,去除float()顾左右而言他。

+0

它工作! :) 谢谢! – Jurkka

+0

@Jurkka如果它有效,它被认为是好方法来接受答案(点击答案左边的复选标记) – gboffi

+0

@Jurkka记得接受答案,如果它的工作! –

相关问题