スライス
1 |
L [:10:2 ] |
反復処理
1 |
以下のための X、Y で、[(1、1)、(2、4)、(3、9)]: |
一覧理解
リストの内包は、あなたが簡単にいくつかの処理または選択基準に基づいてリストを作成することができます。
1 |
ます。myList = [X * X のためのx における範囲(1、11)であれば、X%2!= 0 ] |
発生器
Referennce:https://www.liaoxuefeng.com/wiki/1016959663602400/1017318207388128
ジェネレータを作成します。
1 |
L = [X * X のためのx における範囲(10)] |
fibbonacci用発電機を作成します。
1 |
DEF (K) :# プリント最初のk fibbonacci数 |
そして、実行フロー生成機能は同じではありません。関数の実行順序が検出された文または文のリターンに、関数の最後の行を。ファンクション・ジェネレータ、各コールになり、実行時間は、遭遇した文のリターンを、再び最後から返された実行文は実行を継続します。return 大专栏 [Python] Advanced features
next()
yield
yield
1 |
DEF 奇数() : |
118パスカルの三角形
Leetcode:https://leetcode.com/problems/pascals-triangle/
1 |
def generate(self, numRows): |
Iterator
可以直接作用于for
循环的对象统称为可迭代对象:Iterable
. list
, set
, dict
, str
, tuple
.
而生成器不但可以作用于for
循环,还可以被next()
函数不断调用并返回下一个值,直到最后抛出StopIteration
错误表示无法继续返回下一个值了。可以被next()
函数调用并不断返回下一个值的对象称为迭代器:Iterator
All generators
are Interator
, not all Iterable
are Iterator
.(list
, set
, dict
, str
, tuple
)
But we can use iter()
to transform iterables into interator.
1 |
でisinstance(ITER([])、イテレータ) |
PythonのIterator
オブジェクトは、データストリームを表すIterator
オブジェクトが可能なnext()
機能を呼び出し、投げられたデータの不在になるまで次のデータを返すために引き続きStopIteration
エラーが発生しました。このデータ・ストリームは、順序付けられたシーケンスとして見ることができるが、我々は唯一のを続行することができ、事前にシーケンスの長さを知ることができないnext()
ので、データの関数を計算する次のデマンドを実現するIterator
計算は、不活性、唯一の次のデータを返す必要がありますされていますそれが計算されます。
Iterator
でも、このようなすべての自然数などのデータ、の無限の流れを表します。使用はlist
、すべての自然数を格納されません。