zoukankan      html  css  js  c++  java
  • day06-迭代器

     1 一、迭代器:
     2 
     3 1.可迭代协议:含有__iter__方法。
     4 2.迭代器协议:同时含有__iter__和__next__方法。迭代器是可迭代对象。  iterator迭代器。
     5 3.使用可迭代对象有什么好处?   -->只有是可迭代对象,才可以使用for循环。
     6 4.怎样判断一个变量可以使用for循环?   -->只要判断它是可迭代对象就可以。使用print(dir(变量)) 执行结果有 '__iter__' 或使用
     7                                          print('__iter__' in dir(变量)) 执行结果是True。
     8 5. print('__iter__' in dir(int))
     9   print('__iter__' in dir(bool))
    10   print('__iter__' in dir(list))
    11   print('__iter__' in dir(dict))
    12   print('__iter__' in dir(set))
    13   print('__iter__' in dir(tuple))
    14   print('__iter__' in dir(enumerate([])))
    15   print('__iter__' in dir(range(1)))
    16 6.可迭代对象转化为迭代器的方法:可迭代对象.__iter__() 就可以得到一个迭代器。
    17 7.迭代器中的__next__()方法可以一个一个取值,且值只能取一次,取完就没有了,取完最后一个,再执行next会报错。
    18 8.迭代器的好处:1)可以从容器类型中一个一个取值,所有的值只能取一次。
    19                 2)节省内存空间,迭代器并不会在内存中占用一大块内存,而是随着循环,每次给我一个值。
  • 相关阅读:
    1、编写一个简单的C++程序
    96. Unique Binary Search Trees
    python 操作redis
    json.loads的一个很有意思的现象
    No changes detected
    leetcode 127 wordladder
    django uwsgi websocket踩坑
    you need to build uWSGI with SSL support to use the websocket handshake api function !!!
    pyinstaller 出现str error
    数据库的读现象
  • 原文地址:https://www.cnblogs.com/python-daxiong/p/10267880.html
Copyright © 2011-2022 走看看