出于某种原因,在我调用readlines()之后似乎无法访问我的文件 知道为什么吗?
主要关注的是,for-loop之后没有工作。它没有遍历这些线。
with open('wordlist.txt') as fHand:
content = fHand.readlines()
lines = 0
for _ in fHand:
lines += 1
答案 0 :(得分:4)
fHand.readlines()
读取整个文件,因此文件指针位于文件的末尾。
如果你真的想这样做(提示:你可能不会),你可以在fHand.seek(0)
循环之前添加for
,将指针移回文件的开头。 / p>
with open('wordlist.txt') as fHand:
content = fHand.readlines()
fHand.seek(0)
lines = 0
for _ in fHand:
lines += 1
通常,当您在Python中查看文件时,.read*
命令不是您正在寻找的命令。在你的情况下,你应该做的事情如下:
words = set() # I'm guessing
with open("wordlist.txt") as fHand:
linecount = 0
for line in fHand:
# process line during the for loop
# because honestly, you're going to have to do this anyway!
# chances are you're stripping it and adding it to a `words` set? so...
words.add(line.strip()
linecount += 1