Python >> Tutoriel Python >  >> Python Tag >> Array

Tableau à une ligne Python

Cet article répond à un certain nombre de questions sur la façon d'accomplir différentes choses avec un tableau Python en une seule ligne. En étudiant ces questions, vous deviendrez un meilleur codeur. Alors, retroussons vos manches et commençons ! 🙂

Matrice d'impression à une ligne Python

Si vous voulez juste connaître la meilleure façon d'imprimer un tableau (liste) en Python, voici la réponse courte :

  • Passer une liste en entrée au print() fonction en Python.
  • Utilisez l'opérateur astérisque * devant la liste pour « décompresser » la liste dans la fonction d'impression.
  • Utilisez le sep argument pour définir comment séparer visuellement deux éléments de liste.

Voici le code :

# Create the Python List
lst = [1, 2, 3, 4, 5]

# Use three underscores as separator
print(*lst, sep='___')
# 1___2___3___4___5

# Use an arrow as separator
print(*lst, sep='-->')
# 1-->2-->3-->4-->5

Essayez-le vous-même dans notre shell de code interactif :

C'est la meilleure et la plus Pythonic façon d'imprimer une liste de tableaux Python. Si vous souhaitez toujours en savoir plus sur les alternatives et améliorer vos compétences en Python, lisez le didacticiel suivant !

Article connexe :Imprimez magnifiquement une liste Python [Cliquez et exécutez le code]

Python If Else One Line Array

L'opérateur ternaire le plus basique x if c else y renvoie l'expression x si l'expression booléenne c évalue à True . Sinon, si l'expression c évalue à False , l'opérateur ternaire renvoie l'expression alternative y .

Voici un exemple minimal :

var = 21 if 3<2 else 42
# var == 42

Pendant que vous lisez l'article pour augmenter votre puissance d'une ligne, vous pouvez écouter mon explication vidéo détaillée :

Article connexe :If-Then-Else dans One Line Python [Vidéo + Shell de code interactif]

Python One Line For Loop Array

Comment écrire une boucle For dans une seule ligne de code Python ?

Il existe deux manières d'écrire une boucle for d'une seule ligne :

  • Méthode 1 :Si le corps de la boucle se compose d'une instruction, écrivez simplement cette instruction dans la même ligne :for i in range(10): print(i) . Cela imprime les 10 premiers chiffres sur le shell (de 0 à 9).
  • Méthode 2 : Si le but de la boucle est de créer une liste, utilisez plutôt la compréhension de liste :squares = [i**2 for i in range(10)] . Le code met au carré les dix premiers nombres et les stocke dans la liste de tableaux squares .

Examinons les deux variantes plus en détail dans l'article suivant :

Article connexe :Python One Line For Loop [Un tutoriel simple]

Python Itérer le tableau sur une ligne

Comment parcourir un tableau en une seule ligne de code ?

Supposons que vous ayez donné un tableau (liste) lst et vous voulez itérer sur toutes les valeurs et faire quelque chose avec elles. Vous pouvez accomplir cela en utilisant la compréhension de liste :

lst = [1, 2, 3]
squares = [i**2 for i in lst]
print(squares)
# [1, 4, 9]

Vous parcourez toutes les valeurs du tableau lst et calculer leurs nombres carrés. Le résultat est stocké dans une nouvelle liste de tableaux squares .

Vous pouvez même imprimer toutes les valeurs du tableau au carré sur une seule ligne en créant un tableau factice de valeurs None à l'aide de la fonction print() dans la partie expression de la déclaration de compréhension de liste :

[print(i**2) for i in lst]
'''
1
4
9
'''

Article connexe  :Introduction complète à la compréhension de la liste

Python Fill Array One Line

Voulez-vous remplir ou initialiser un tableau avec n valeurs en utilisant une seule ligne de code Python ?

Pour remplir un tableau avec une valeur entière, utilisez la fonctionnalité de multiplication de liste :

array = [0] * 10
print(array)
# [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]

Cela crée un tableau de dix éléments remplis avec la valeur 0. Vous pouvez également remplir le tableau avec d'autres éléments en remplaçant le 0 par l'élément souhaité, par exemple, [None] * 10 crée une liste de dix None éléments.

Python initialiser le tableau une ligne

Il existe de nombreuses façons de créer un tableau (liste) en Python. Voyons un aperçu rapide dans le tableau suivant :

Code Description
[] Crochet :Initialise une liste vide avec zéro élément. Vous pouvez ajouter des éléments ultérieurement.
[x1, x2, x3, … ] Affichage de la liste : Initialise une liste vide avec les éléments x1 , x2 , x3 , … Par exemple, [1, 2, 3] crée une liste avec trois entiers 1, 2 et 3.
[expr1, expr2, ... ] Affichage de liste avec des expressions :Initialise une liste avec le résultat des expressions expr1 , expr2 , … Par exemple, [1+1, 2-1] crée la liste [2, 1] .
[expr for var in iter] Compréhension de la liste :applique l'expression expr à chaque élément d'un itérable.
list(iterable) Constructeur de liste qui prend un itérable en entrée et renvoie une nouvelle liste.
[x1, x2, ...] * n Multiplication de liste crée une liste de n concaténations de l'objet liste. Par exemple [1, 2] * 2 == [1, 2, 1, 2] .

Vous pouvez jouer avec quelques exemples dans notre shell Python interactif :

Exercice  :Utilisez la compréhension de liste pour créer une liste de nombres carrés.

Plongeons-nous dans des méthodes plus spécifiques pour créer diverses formes de listes en Python.

Article connexe :Comment créer une liste Python ?

Python Filter Array One Line

Comment pouvez-vous filtrer un tableau en Python en utilisant une condition arbitraire ?

La façon la plus Pythonique de filtrer un tableau est la déclaration de compréhension de liste [x for x in list if condition] . Vous pouvez remplacer condition avec n'importe quelle fonction de x vous souhaitez utiliser comme critère de filtrage.

Par exemple, si vous souhaitez filtrer tous les éléments inférieurs à, disons, 10, vous utiliserez l'instruction de compréhension de liste [x for x in list if x<10] pour créer une nouvelle liste avec tous les éléments de liste inférieurs à 10.

Voici trois exemples de filtrage d'une liste :

  • Obtenir des éléments inférieurs à huit :[x for x in lst if x<8] .
  • Obtenir les éléments pairs :[x for x in lst if x%2==0] .
  • Obtenir des éléments impairs :[x for x in lst if x%2] .
lst = [8, 2, 6, 4, 3, 1]

# Filter all elements <8
small = [x for x in lst if x<8]
print(small)


# Filter all even elements
even = [x for x in lst if x%2==0]
print(even)

# Filter all odd elements
odd = [x for x in lst if x%2]
print(odd)

La sortie est :

# Elements <8
[2, 6, 4, 3, 1]

# Even Elements
[8, 2, 6, 4]

# Odd Elements
[3, 1]

C'est le moyen le plus efficace de filtrer un tableau et c'est aussi le plus Pythonique.

Article connexe :Comment filtrer une liste en Python ?

Livre Python One-Liners :maîtrisez d'abord la ligne unique !

Les programmeurs Python amélioreront leurs compétences en informatique avec ces lignes utiles.

Python One-Liners vous apprendra à lire et à écrire des « lignes simples » :des déclarations concises de fonctionnalités utiles regroupées dans une seule ligne de code. Vous apprendrez à décompresser et à comprendre systématiquement n'importe quelle ligne de code Python, et à écrire du Python éloquent et puissamment compressé comme un expert.

Les cinq chapitres du livre couvrent (1) les trucs et astuces, (2) les expressions régulières, (3) l'apprentissage automatique, (4) les principaux sujets de science des données et (5) les algorithmes utiles.

Des explications détaillées des one-liners introduisent les concepts clés de l'informatique etdéveloppez vos compétences en matière de codage et d'analyse . Vous découvrirez les fonctionnalités Python avancées telles que la compréhension de liste , tranchage , fonctions lambda , expressions régulières , carte et réduire fonctions et affectations de tranches .

Vous apprendrez également à :

  • Exploiter les structures de données pour résoudre des problèmes réels , comme utiliser l'indexation booléenne pour trouver des villes avec une pollution supérieure à la moyenne
  • Utiliser les bases de NumPy comme tableau , forme , axe , tapez , diffusion , indexation avancée , tranchage , tri , recherche , agrégation , et statistiques
  • Calculer des statistiques de base de tableaux de données multidimensionnels et les algorithmes K-Means pour l'apprentissage non supervisé
  • Créer davantage d'expressions régulières avancées en utilisant le regroupement et groupes nommés , anticipations négatives , caractères échappés , espaces blancs, jeux de caractères (et jeux de caractères négatifs ) et opérateurs gourmands/non gourmands
  • Comprendre un large éventail de sujets informatiques , y compris les anagrammes , palindromes , surensembles , permutations , factorielles , nombres premiers , Fibonacci chiffres, obscurcissement , recherche , et tri algorithmique

À la fin du livre, vous saurez comment écrire Python dans sa forme la plus raffinée , et créez de belles pièces concises d'"art Python" en une seule ligne.

Obtenez vos Python One-Liners sur Amazon !!