擅长:python、mysql、java
<p>这里有一种方法可以解决这个问题,尽管我不打算解释它是如何工作的。您将需要研究<code>regex</code>、<code>list comprehensions</code>、<code>enumerate</code>内置方法等。在</p>
<pre><code>import re
with open('myfile.txt', 'r') as f:
lines = f.readlines()
lines = [l.strip() for l in lines] # list comprehension
for index, line in enumerate(lines):
mark = re.search(r'\d+',line) # regex
if int(mark.group()) > 70:
print ('Mark: ', mark.group())
print ('Line above:', lines[index-1])
</code></pre>
<p>注意:您需要删除文本文件中包含“-etc…”的最后一行代码才能正常工作。另外,文本文件中的每一行都必须有一个标记(分数)。也没有空行:)
如果您更改了txt文件,并且第一行的标记是>;70,那么“上面一行”实际上是文件的最后一行-至少在本代码中是这样。在</p>