我有一个数据文件,需要区分字母和数字。这是该文件的示例。
Fahrenheit degrees: 67.2
Fahrenheit degrees: 66.0
Fahrenheit degrees: 78.9
Fahrenheit degrees: 102.1
Fahrenheit degrees: 32.0
Fahrenheit degrees: 87.8
最终目标是阅读每个数字,将其转换为Celcius,然后打印出结果。我会用什么功能一行一行地读取数字?任何帮助表示赞赏。谢谢!
答案 0 :(得分:2)
您可以使用简单的list comprehension:
执行此操作with open("filename.txt") as f:
numbers = [float(line.split()[2]) for line in f]
使用with
上下文管理器打开包含数据的文件,然后迭代文件中的每一行,拆分空白,然后取第三行(Python中的索引是基于0的)字段和转换它是浮动的。最后,您将获得所有阅读材料的清单。
with
会在您完成文件后处理该文件,因此您无需记得在稍后调用f = open("filename.txt")
时将每个f.close()
与之匹配。