In tatsächlichen Situationen müssen wir häufig einige Listen erstellen. Gibt es neben der relativ ineffizienten Verwendung einer for-Schleife zum einzelnen Anhängen an die Liste eine bessere Möglichkeit?
Python bietet uns eine sehr leistungsstarke Möglichkeit, Listen zu erstellen.
Zum Beispiel müssen wir eine Datenliste von 1 bis 100 erstellen.
range(1,101)
Wir möchten eine Liste mit 12,22,32...1002 erstellen, wie können wir das erreichen?
[x*x for x in range(1,101)] | |------------------ x取得1,2,3,4....100列表 |------------------------- 对列表中的元素进行平方计算
Wie beurteilen wir zunächst, ob die Liste das ist, was wir brauchen? Wir können if verwenden.
[x*x for x in range(1,1001) if x%2==0] |------先对x进行判断,是偶数的则留下
Mehrere Schleifen, um die vollständige Permutationsliste zu überleben. Wenn wir beispielsweise alle 9*9-Multiplikationstabellen generieren müssen, können wir Doppelschleifen verwenden.
[str(x)+"*"+str(y)+"="+str(x*y) for x in range(0,10) for y in range(0,10)]
Im obigen Code ist die äußere Schleife x und die innere Schleife ist y.