中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python中怎么使用__iter__()展現外部狀態

發布時間:2021-04-29 10:46:48 來源:億速云 閱讀:119 作者:小新 欄目:編程語言

這篇文章主要介紹python中怎么使用__iter__()展現外部狀態,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

python的數據類型有哪些?

python的數據類型:1. 數字類型,包括int(整型)、long(長整型)和float(浮點型)。2.字符串,分別是str類型和unicode類型。3.布爾型,Python布爾類型也是用于邏輯運算,有兩個值:True(真)和False(假)。4.列表,列表是Python中使用最頻繁的數據類型,集合中可以放任何數據類型。5. 元組,元組用”()”標識,內部元素用逗號隔開。6. 字典,字典是一種鍵值對的集合。7. 集合,集合是一個無序的、不重復的數據組合。

1、如果你想讓你的生成器暴露外部狀態給用戶, 別忘了你可以簡單的將它實現為一個類,然后把生成器函數放到 __iter__() 方法中過去。比如:

from collections import deque
 
class linehistory:
    def __init__(self, lines, histlen=3):
        self.lines = lines
        self.history = deque(maxlen=histlen)
 
    def __iter__(self):
        for lineno, line in enumerate(self.lines, 1):
            self.history.append((lineno, line))
            yield line
 
    def clear(self):
        self.history.clear()

2、為了使用這個類,你可以將它當做是一個普通的生成器函數。然而,由于可以創建一個實例對象,于是你可以訪問內部屬性值,比如 history 屬性或者是 clear() 方法。代碼示例如下:

with open('somefile.txt') as f:

    lines = linehistory(f)

    for line in lines:

        if 'python' in line:

            for lineno, hline in lines.history:

                print('{}:{}'.format(lineno, hline), end='')

以上是“python中怎么使用__iter__()展現外部狀態”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

汉沽区| 吴忠市| 贵德县| 德阳市| 南安市| 浑源县| 德兴市| 深圳市| 雅江县| 德阳市| 榆林市| 巴塘县| 凤冈县| 越西县| 会同县| 颍上县| 武威市| 乌兰县| 阳朔县| 宣武区| 吉木萨尔县| 台前县| 吕梁市| 普定县| 浦东新区| 镇坪县| 崇仁县| 陇西县| 茌平县| 奎屯市| 嫩江县| 色达县| 四平市| 郎溪县| 南江县| 泸西县| 通辽市| 林西县| 河间市| 东乌珠穆沁旗| 吉木萨尔县|