-4
我想實現一個名爲CharCounter的迭代器類。這個類打開一個文本文件並提供一個迭代器,該文件返回包含用戶指定數量字符的文本文件中的單詞。它應該每行輸出一個字。不是它在做什麼,而是將這些單詞作爲一個列表輸出,然後不斷輸出'a'。我如何修復我的代碼?修復Python代碼
class CharCounter(object):
def __init__(self, fileNm, strlen):
self._fileNm = fileNm
self._strlen = strlen
fw = open(fileNm)
text = fw.read()
lines = text.split("\n")
words = []
pwords =[]
for each in lines:
words += each.split(" ")
chkEnd = ["'",'"',",",".",")","("]
if words[-1] in chkEnd:
words = words.rstrip()
for each in words:
if len(each) == strlen:
pwords.append(each)
print(pwords)
def __iter__(self):
return CharCounterIterator(self._fileNm)
class CharCounterIterator(object):
def __init__(self,fileNm):
self._fileNm = fileNm
self._index = 0
def __iter__(self):
return self
def next(self):
try:
ret = self._fileNm[self._index]
return ret
except IndexError:
raise StopIteration
if __name__=="__main__":
for word in CharCounter('agency.txt',11):
print "%s" %word
請改用https://codereview.stackexchange.com/。我懷疑有人會幫助你。 – hspandher
那麼你的代碼有什麼問題 – depperm
「修復」和「改善」是非常不同的。 「修復」意味着「修復不起作用的代碼」,或者「使錯誤的代碼正常工作」,但「改進」是「使得工作正常,代碼工作更好」。 – ForceBru