<p>更新:
我编辑了如下代码,并让一个朋友在他的电脑上运行它,它做了它应该做的,但仍然不能在我的电脑上工作。我现在比当初更困惑了。可能是另一个程序有问题吗?你知道吗</p>
<pre><code>import string
import re
wholeLine = ""
file = open("bowlingscores.txt", "r")
for line in file:
line = line.strip()
wholeLine += line
scores = re.findall('\d+', wholeLine)
names = re.findall('\D+', wholeLine)
file.close()
scores = list(map(int,scores))
validScores = [x for x in scores if 300 >= x >= 0]
average = sum(validScores) / len(validScores)
numScores = len(scores)
output = []
for i in range(numScores):
if scores[i] == 300:
output.append(names[i])
output.append("\tperfect\n")
if scores[i] == average:
output.append(names[i])
output.append("\taverage\n")
if scores[i] < average:
output.append(names[i])
output.append("\tbelow average\n")
if scores[i] > average:
if scores[i] <300:
output.append(names[i])
output.append("\tabove average\n")
if scores[i] > 300:
output.append(names[i])
output.append("\tinvalid score\n")
outputFile = open('bowlingaverages.txt', 'w')
for item in output:
outputFile.write(item)
outputFile.close
print(output)
</code></pre>