【发布时间】:2017-04-20 08:54:18
【问题描述】:
我在这样的文件中有内容,我只想从中提取浮点值。文本文件还包含新行,也应在 Python 中删除。
hub,0.0166
cord,0.0166
ever,0.0332
switch,0.0498
sleep,0.06639
allow,0.09959
work,0.14939
我试过这个:
newDict = list()
for words in file:
splitline = words.split()
newDict.append("{0}\t{1}".format(splitline[0],log(float(splitline[1]))))
newDict[float(splitline[0])] = ",".join(splitline[1:])
print(newDict)
我观察到的错误是:
Traceback (most recent call last):
File "G:\Setups\Python\chi-1.py", line 11, in <module>
newDict.append("{0}\t{1}".format(splitline[0],log(float(splitline[1]))))
IndexError: list index out of range
但我没有得到任何输出它向我显示了错误。循环中的变量文件包含文本文件。所以如果有人知道如何只提取浮点数。请帮忙。
提前致谢
【问题讨论】:
-
错误是什么
-
你忘记了分隔符:
splitline = words.split(',') -
它显示错误 --- ` Traceback(最近一次调用最后):文件“G:\Setups\Python\chi-1.py”,第 17 行,在
newDict[float (splitline[0])] = ",".join(splitline[1:]) ValueError: could not convert string to float:` -
解决了。谢谢
-
@ForamKalyani 不客气