我将此python mapper1.py input.txt
输入到脚本所在的目录中。但是,在我按下回车键
import sys
import re
def main(argv):
with open(sys.argv[1], "r") as f:
contents = f.readline()
line = contents
# line = sys.stdin.readline()
pattern = re.compile("[a-zA-Z0-9]+")
words = []
while line:
for word in pattern.findall(line):
words.append(word.lower())
line = sys.stdin.readline()
words.sort()
for w in words:
print(w + "\t" + "1")
if __name__ == "__main__":
main(sys.argv)
这是我退出后收到的错误
are 1
Traceback (most recent call last):
File "mapper1.py", line 24, in <module>
main(sys.argv)
File "mapper1.py", line 20, in main
print(w + "\t" + "1")
KeyboardInterrupt
答案 0 :(得分:1)
你的while line:
循环永远不会结束,因为输入一个&#34;空行&#34;在键盘上给出一个回车符,它算作某事。