使用file.readlines()后删除不需要的字符



我尝试过使用lines.split()lines.strip(),但无法删除以下内容:' ', n or #

>>> f = open('example.txt')
>>> lines = f.readlines()
>>> lines
['#n', '2.1,-3.1n', '-0.7,4.1n', '#n', '3.8,1.5n', '-1.2,1.1']
Needing this output
[2.1, -3.1, -0.7, 4.1, 3.8, 1.5, -1.2, 1.1]

您可以先删除换行符。然后根据#字符进行剥离、清洁。代码如下:

a = [i.strip() for i in lines]
b = [float(j) for i in a for j in i.split(",") if "#" not in j]

输出如下:

>>> a
['#', '2.1,-3.1', '-0.7,4.1', '#', '3.8,1.5', '-1.2,1.1']
>>> b
[2.1, -3.1, -0.7, 4.1, 3.8, 1.5, -1.2, 1.1]

最新更新