Maison développement back-end Tutoriel Python Introduction aux méthodes d'opération map() et zip() en python

Introduction aux méthodes d'opération map() et zip() en python

Mar 07, 2017 pm 04:11 PM
map zip

Pour map(), son prototype est : map(function, séquence), qui consiste à effectuer des opérations de fonction sur chaque élément de la séquence.

Par exemple, le précédent a, b, c = map(int, raw_input().split()) signifie convertir l'entrée a, b, c en entiers. Autre exemple :

a = ['1','2','3','4']
print map(list,a)
print map(int,a)
Copier après la connexion

La première carte convertit chaque élément de la liste a en liste, et la deuxième carte convertit chaque élément d'un Les éléments sont convertis en entiers.
Pour zip(), le prototype est zip(*list), list est une liste et zip(*list) renvoie un tuple, tel que :

list = [[1,2,3],[4,5,6],[7,8,9]]
t = zip(*list)
print t
Copier après la connexion

Sortie : [(1, 4, 7), (2, 5, 8), (3, 6, 9)]

x = [1,2,3,4,5]
y = [6,7,8,9,10]
a = zip(x,y)
print a
Copier après la connexion

Sortie : [(1, 6), (2, 7), (3, 8), (4, 9), (5, 10)]

Voici quelques suppléments :

[python] 
>>> list = [[0,1,2],[3,1,4]] 
>>> [sum(x) for x in list] 
[3, 8] 
>>> map(sum,list) 
[3, 8]
Copier après la connexion

Si vous souhaitez obtenir la somme de chaque colonne, vous devez d'abord utiliser zip(*list) pour décompresser la liste pour obtenir une liste de tuples, où le i-ième tuple contient le i-ième élément de chaque ligne :

[python] 
>>> list = [[0,1,2],[3,1,4]] 
>>> zip(*list) 
[(0, 3), (1, 1), (2, 4)] 
>>> [sum(x) for x in zip(*list)] 
[3, 2, 6] 
>>> map(sum,zip(*list)) 
[3, 2, 6]
Copier après la connexion

L'exemple suivant concerne zip et unzip (en fait zip Comment ça marche lorsqu'il est utilisé avec * :

[python] 
>>> x=[1,2,3] 
>>> y=[4,5,6] 
>>> zipped = zip(x,y) 
>>> zipped 
[(1, 4), (2, 5), (3, 6)] 
>>> x2,y2=zip(*zipped) 
>>> x2 
(1, 2, 3) 
>>> y2 
(4, 5, 6) 
>>> x3,y3=map(list,zip(*zipped)) 
>>> x3 
[1, 2, 3] 
>>> y3 
[4, 5, 6]
Copier après la connexion


Plus de map() et zip( ) en python Veuillez faire attention au site Web PHP chinois pour les articles connexes sur les méthodes de fonctionnement !


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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment Springboot lit-il les listes, les tableaux, les collections de cartes et les objets dans les fichiers YML ? Comment Springboot lit-il les listes, les tableaux, les collections de cartes et les objets dans les fichiers YML ? May 11, 2023 am 10:46 AM

application.yml définit la collection de listes. La première façon consiste à utiliser l'annotation @ConfigurationProperties pour obtenir toutes les valeurs de la collection de listes type:code:status:-200-300-400-500. le fichier de configuration. Ce qu'il faut noter ici, c'est que lors de la définition de la liste Collection, définissez d'abord un Bean de classe de configuration, puis utilisez l'annotation @ConfigurationProperties pour obtenir la valeur de la collection de liste. Nous expliquerons ici le rôle des annotations pertinentes. @Component remet la classe d'entité à la direction Spring @ConfigurationPropertie

Comment définir la carte du délai d'expiration en Java Comment définir la carte du délai d'expiration en Java May 04, 2023 am 10:13 AM

1. Contexte technique Dans le développement de projets réels, nous utilisons souvent des middlewares de mise en cache (tels que Redis, MemCache, etc.) pour nous aider à améliorer la disponibilité et la robustesse du système. Mais dans de nombreux cas, si le projet est relativement simple, il n’est pas nécessaire d’introduire spécifiquement un middleware tel que Redis pour augmenter la complexité du système afin d’utiliser la mise en cache. Java lui-même dispose-t-il donc de composants de mise en cache légers et utiles ? La réponse est bien sûr oui, et il existe plusieurs solutions. Les solutions courantes incluent : ExpiringMap, LoadingCache et un packaging basé sur HashMap. 2. Effets techniques pour réaliser les fonctions courantes du cache, telles qu'une stratégie de suppression obsolète, l'échauffement des données de hotspot 3. ExpiringMap3.

Meilleur guide pour compresser des fichiers HTML en ZIP Meilleur guide pour compresser des fichiers HTML en ZIP Apr 09, 2024 pm 04:09 PM

La compression de fichiers HTML au format ZIP peut améliorer la vitesse de chargement des pages. Les méthodes incluent : l'utilisation d'outils en ligne (tels que FileOptimizer, TinyPNG) l'utilisation d'outils de ligne de commande (tels que gzip, 7-zip) l'utilisation de scripts Node.js (en utilisant le module zlib)

Quels sont les moyens d'implémenter la sécurité des threads pour Map en Java ? Quels sont les moyens d'implémenter la sécurité des threads pour Map en Java ? Apr 19, 2023 pm 07:52 PM

Méthode 1. Utilisez HashtableMapashtable=newHashtable(); C'est la première chose à laquelle tout le monde pense, alors pourquoi est-il thread-safe ? Jetez ensuite un œil à son code source. Nous pouvons voir que nos méthodes couramment utilisées telles que put, get et containKey sont toutes synchrones, elles sont donc thread-safe publicsynchronizedbooleancontainsKey(Objectkey){Entrytab[]=table;inthash=key. hashCode( );intindex=(hash&0x7FFFFFFF)%tab.leng

Comment convertir des objets en cartes en Java – en utilisant BeanMap Comment convertir des objets en cartes en Java – en utilisant BeanMap May 08, 2023 pm 03:49 PM

Il existe de nombreuses façons de convertir des javabeans et des cartes, telles que : 1. Convertir des beans en json via ObjectMapper, puis convertir json en map. Cependant, cette méthode est compliquée et inefficace. Après les tests, 10 000 beans ont été convertis en boucle. ça prend 12 secondes ! ! ! Non recommandé.2. Obtenez les attributs et les valeurs de la classe du bean via la réflexion Java, puis convertissez-les en paires clé-valeur correspondant à la carte. Cette méthode est la deuxième meilleure, mais elle est un peu plus gênante. 3. Grâce à la méthode net.sf.cglib.beans.BeanMap dans la classe, cette méthode est extrêmement efficace. La différence entre elle et la deuxième méthode est qu'en raison de l'utilisation du cache, le bean doit être initialisé lorsqu'il est utilisé pour la première fois. créé.

Comment utiliser la commande zip de compression Linux Comment utiliser la commande zip de compression Linux Oct 08, 2023 pm 01:25 PM

La commande zip est un outil de compression très utile dans les systèmes Linux. En utilisant la commande zip, vous pouvez facilement compresser des fichiers et des répertoires dans un fichier zip, économiser de l'espace de stockage et faciliter le transfert. La syntaxe de base de la commande zip est "zip [options] [nom du fichier compressé] [fichier ou répertoire à compresser]".

Comment configurer et utiliser le module map sur le serveur Nginx Comment configurer et utiliser le module map sur le serveur Nginx May 21, 2023 pm 05:14 PM

L'instruction map est fournie par le module ngx_http_map_module. Par défaut, nginx charge ce module sauf si artificiellement --without-http_map_module. Le module ngx_http_map_module peut créer des variables dont les valeurs sont associées aux valeurs d'autres variables. Permet la classification ou le mappage simultané de plusieurs valeurs​​à plusieurs valeurs différentes​​et le stockage dans une variable. La directive map est utilisée pour créer une variable, mais n'effectue l'opération de mappage de vue que lorsque la variable est acceptée. En traitant des requêtes qui ne font pas référence à des variables, il n'y a aucune pénalité de performances pour le module. 1.ngx_http_map_module syntaxe de la carte de description des instructions du module

Explication détaillée de la commande du fichier de décompression (zip) sous centos7 Explication détaillée de la commande du fichier de décompression (zip) sous centos7 Jan 07, 2024 pm 06:30 PM

1. Le dossier compressé est un fichier zip [root@cgls]#zip-rmydata.zipmydata2. Décompressez mydata.zip dans le répertoire mydatabak [root@cgls]#unzipmydata.zip-dmydatabak3.mydata01 et mydata02.txt sont compressés dans mydata.zip[root@cgls]#zipmydata.zipmydata01mydata02.txt4. Décompressez directement le fichier mydata.zip [root@cgls]#unzipmydata.zip5.

See all articles