Heim  >  Artikel  >  Backend-Entwicklung  >  Eine kurze Einführung in die Iteration in Python (mit Code)

Eine kurze Einführung in die Iteration in Python (mit Code)

不言
不言nach vorne
2018-09-28 14:24:381934Durchsuche

Dieser Artikel bietet Ihnen eine kurze Einführung in die Iteration in Python (mit Code). Freunde in Not können darauf verweisen.

Iterationsbezogen

  • iter(): Konvertieren Sie eine Sequenz in einen Iterator

  • next(): Rufen Sie das Objekt automatisch auf Die __next__()-Methode zum Iterieren des Objekts

  • map(): Nimmt einen Sequenzwert als Parameter, ruft nacheinander eine Funktion auf, gibt eine Liste direkt in Python2 zurück, gibt aber einen Iterator zurück in Python3

# map经常配合lambdas来使用
items = [1, 2, 3, 4, 5]
squared = list(map(lambda x: x**2, items))

# 用于循环调用一列表的函数
def multiply(x):
        return (x*x)
def add(x):
        return (x+x)

funcs = [multiply, add]
for i in range(5):
    value = map(lambda x: x(i), funcs)
    print(list(value))

# Output:
# [0, 0]
# [1, 2]
# [4, 4]
# [9, 6]
# [16, 8]
  • filter(): Filtern Sie die Elemente in der Liste und geben Sie eine Liste zurück, die aus allen Elementen besteht, die die Anforderungen erfüllen. In Python2 ist die Liste Wird direkt zurückgegeben. Aber in Python3 wird der Iterator

number_list = range(-5, 5)
less_than_zero = filter(lambda x: x < 0, number_list)
print(list(less_than_zero))  

# Output: [-5, -4, -3, -2, -1]
  • enumerate() zurückgegeben: iteriert über Daten und zählt automatisch und verfügt über viele nützliche optionale Parameter

# 配置从哪个数字开始枚举
my_list = [&#39;apple&#39;, &#39;banana&#39;, &#39;grapes&#39;, &#39;pear&#39;]
for c, value in enumerate(my_list, 1):
    print(c, value)

# 输出:
(1, &#39;apple&#39;)
(2, &#39;banana&#39;)
(3, &#39;grapes&#39;)
(4, &#39;pear&#39;)
  • for-else
    Die for-Schleife in Python hat auch eine else-Klausel. Diese else-Klausel wird ausgeführt, wenn die Schleife normal endet, sodass sie häufig mit break verwendet werden kann .

for item in container:
    if search_something(item):
        # Found it!
        process(item)
        break
else:
    # Didn&#39;t find anything..
    not_found_in_container()

Objektintrospektion

  • dir(): Gibt eine Liste der Eigenschaften und Methoden zurück, die einem Objekt gehören. Wenn keine Parameter übergeben werden, dann Es werden alle Namen im aktuellen Bereich zurückgegeben.

  • type(): Gibt den Typ eines Objekts zurück.

  • id(): Gibt das Eindeutige zurück ID eines beliebigen anderen Objekttyps

Erweiterungen

functools

  • Reduce(), wenn Sie einige Operationen daran ausführen müssen Eine Liste reduzieren ist eine sehr nützliche Funktion beim Berechnen und Zurückgeben von Ergebnissen.

from functools import reduce
product = reduce( (lambda x, y: x * y), [1, 2, 3, 4] )

# Output: 24

Das obige ist der detaillierte Inhalt vonEine kurze Einführung in die Iteration in Python (mit Code). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:cnblogs.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen