Une brève introduction à l'itération en Python (avec code)

不言
Libérer: 2018-09-28 14:24:37
avant
1945 Les gens l'ont consulté

Cet article vous apporte une brève introduction à l'itération en Python (avec code). Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer.

Itération liée

  • iter() : Convertir une séquence en itérateur

  • next() : Appeler automatiquement l'objet La méthode __next__() pour itérer l'objet

  • map() : prend une valeur de séquence en paramètre, appelle une fonction à son tour, renvoie une liste directement en python2, mais renvoie un itérateur en 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]
Copier après la connexion
  • filter() : filtre les éléments de la liste et renvoie une liste composée de tous les éléments qui répondent aux exigences, renvoyée directement en python2 list, mais renvoie un itérateur en python3

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]
Copier après la connexion
  • enumerate() : parcourt les données et compte automatiquement, et possède de nombreux paramètres facultatifs utiles

# 配置从哪个数字开始枚举
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;)
Copier après la connexion
  • for-else
    La boucle for en Python a également une clause else Cette clause else sera exécutée à la fin normale de la boucle, donc elle. peut souvent être utilisé avec une pause d'utilisation.

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

Introspection d'objet

  • dir() : renvoie une liste de propriétés et de méthodes appartenant à un objet, si aucun paramètre n'est transmis, il renverra tous les noms dans la portée actuelle

  • type() : Renvoie le type d'un objet

  • id( ): Renvoie l'ID unique de tout type d'objet différent

Extensions

functools

  • Reduce() lorsqu'une liste doit le faire be Réduire est une fonction très utile pour effectuer certains calculs et renvoyer les résultats.

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

# Output: 24
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:cnblogs.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal