Maison > développement back-end > Tutoriel Python > Compréhension de la liste des jours

Compréhension de la liste des jours

Mary-Kate Olsen
Libérer: 2025-01-01 14:14:10
original
811 Les gens l'ont consulté

Day-List Comprehension

Compréhension de la liste :

C'est une méthode syntaxiquement élégante pour créer ou manipuler des listes en une seule ligne de code.

Écrivez un programme pour imprimer les fruits contenant la lettre 'a' (en utilisant la boucle for) :

fruits = ["apple", "banana", "cherry", "kiwi", "mango"]
newlist = []

for x in fruits:
  if "a" in x:
    newlist.append(x)

print(newlist)

Copier après la connexion
['apple', 'banana', 'mango']

Copier après la connexion

(Utilisation de la compréhension de liste) :

fruits = ["apple", "banana", "cherry", "kiwi", "mango"]

newlist = [x for x in fruits if "a" in x]
print(newlist)

Copier après la connexion
['apple', 'banana', 'mango']
Copier après la connexion

Écrivez un programme pour trouver la racine carrée d'un nombre donné :

l = [10,20,30,40]
newlist = []

#using for loop
for num in l:
    newlist.append(num**2)
print(newlist)

#using loop in comprehensive way
newlist = [num**2 for num in l]
print(newlist)
Copier après la connexion
[100, 400, 900, 1600]
[100, 400, 900, 1600]
Copier après la connexion

Trouver des numéros similaires dans 2 listes et des numéros différents dans les mêmes 2 listes :

l1 = [10,20,30,40]
l2 = [30,40,50,60]

#for loop
for num in l1:
    for no in l2:
        if num== no:
            print(num,end=' ')
#comprehensive
print([num for num in l1 for no in l2 if num==no])

Copier après la connexion
30 40 
[30, 40]
Copier après la connexion
1 = [10,20,30,40]
l2 = [30,40,50,60]

#comprehensive
output = [num for num in l1 if num not in l2]

output = output + [num for num in l2 if num not in l1]
print(output)

#for loop
for num in l1:
    if num not in l2:
        print(num,end=' ')

for num in l2:
    if num not in l1:
        print(num,end=' ')
Copier après la connexion
[10, 20, 50, 60]
10 20 50 60

Copier après la connexion

Écrire un programme pour le résultat donné dans une approche globale :

l1 = [1,2,3]
l2 = [5,6,7]
Sortie :[(1, 5), (1, 6), (1, 7), (2, 5), (2, 6), (2, 7), (3, 5), (3, 6) , (3, 7)]

l1 = [1,2,3]
l2 = [5,6,7]

l = [(i,j) for i in l1 for j in l2 if i!=j]
print(l)

Copier après la connexion
[(1, 5), (1, 6), (1, 7), (2, 5), (2, 6), (2, 7), (3, 5), (3, 6), (3, 7)]
Copier après la connexion

Écrivez un programme pour la sortie donnée :
s = "a1b2c3"
sortie : abc123

Méthode :1

s= "a1b2c3"

alpha_list = []
num_list = []

for letter in s:
    if letter.isalpha():
        alpha_list.append(letter)
    else:
        num_list.append(letter)

print("".join(alpha_list+num_list))

Copier après la connexion

Méthode :2

s = "a1b2c3"
letter=''.join([i for i in s if i.isalpha()])
no=''.join([i for i in s if i.isdigit()])

print(letter+no)
Copier après la connexion
abc123
Copier après la connexion

Écrivez un programme pour la sortie donnée :

s = "a4k3b2"
sortie : aeknbd

s = "a4k3b2"
i = 0 
while i<len(s):
    first = s[i]
    second = int(s[i+1])
    print(first, chr(ord(first)+second),sep='',end='')
    i+=2

Copier après la connexion
aeknbd
Copier après la connexion

Tâche :

1) Écrivez un programme pour obtenir le résultat 'abbbbklllbcc'

s = "a4k3b2"
i = 0

while i < len(s):
    first = s[i]  
    second =int(s[i + 1]) 
    print(first,chr(ord(first)+1)*second,sep='',end='')
    i+=2

Copier après la connexion
abbbbklllbcc
Copier après la connexion

2) Écrivez un programme pour obtenir le résultat 'aaaaakkkkbbb'

s = "a4k3b2"
i = 0

while i < len(s):
    first = s[i]  
    second =int(s[i + 1]) 
    print(first,chr(ord(first))*second,sep='',end='')
    i+=2
Copier après la connexion
aaaaakkkkbbb

Copier après la connexion

3.Rejoignez la matrice donnée dans une liste unique en utilisant une boucle for complète et normale.

Méthode : 1 (Utilisation de la boucle for)

matrix = [[10,20,30], [40,50,60], [70,80,90]]
output=[]

for i in matrix:
    for j in i:
        output.append(j)
print(output)

Copier après la connexion

Méthode : 2 (Utilisation d'une boucle for complète)

matrix = [[10, 20, 30], [40, 50, 60], [70, 80, 90]]

output = [j for i in matrix for j in i]
print(output)

Copier après la connexion
[10, 20, 30, 40, 50, 60, 70, 80, 90]

Copier après la connexion

4.l = ['ABC','DEF', 'GHI', 'JKL']
Obtenez la SORTIE : ['ABC', 'def', 'GHI', 'jkl']

l = ['ABC', 'DEF', 'GHI', 'JKL']

output = [] 
for i, alpha in enumerate(l):
    if i % 2 != 0:
        output.append(alpha.casefold())
    else:
        output.append(alpha)
print(output)
Copier après la connexion
['ABC', 'def', 'GHI', 'jkl']

Copier après la connexion

5.Trouvez le total par ligne pour la matrice donnée :

matrix = [[10,20,30], 
          [40,50,60], 
          [70,80,90]]
for inner in matrix:
    total = 0
    for index,num in enumerate(inner):
        total+=num
    print(total,end=' ')

Copier après la connexion
60 150 240
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!

source:dev.to
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal