我正在使用Python的5小時左右的經驗,到目前爲止,我對它的功能印象深刻。我現在的努力是爲了作一個簡短的企圖在Stream類,用於其代碼如下:我可以讓我的課在Python中的「in」關鍵字中玩嗎?
class Stream:
"""A Basic class implementing the stream abstraction. """
def __init__(self,data,funct):
self.current = data
self._f = funct
def stream_first(self):
"""Returns the first element of the stream"""
return self.current
def stream_pop(self):
"""Removes and returns the first element of the stream. """
temp = self.current
self.current = self._f(self.current)
return temp
享受一定的成功還有,我試圖讓一個BoundedStream類行爲基本上像無界一個,除了在某個點它耗盡了元素。我現在的問題是,看到任何這樣的有界流有一些有限的元素,應該可以迭代它們。如果我使用明確的列表,我可以使用Python的in
關鍵字和for
循環來乾淨地完成此操作。我想爲自己的班級保持清潔。是否有一些我可以實現的方法或任何其他語言功能,可以讓我做到這一點?任何你可能會提供給菜鳥的答案或其他幫助將不勝感激!
-David
P.S.
對於那些想知道的,有限流的推動力是我嘗試了內置函數range
,但是Python聲稱我想看的範圍太大了。爲了提高記憶效率,我轉向Streams。
* Python聲稱我想要查看的範圍太大* - 你能記得Python說它是如何聲稱它做出的?看到你的代碼和產生的錯誤將是非常有趣的。 – 2010-12-11 08:57:39
您想如何定義「BoundedStream」類的界限? – martineau 2010-12-11 09:15:34