Maison >développement back-end >Tutoriel Python >Fonctions Python Day-List, tâches

Fonctions Python Day-List, tâches

Barbara Streisand
Barbara Streisandoriginal
2024-12-26 19:17:09172parcourir

Python Day-List functions, Tasks

split() : Il convertit la chaîne en liste et séparée par des virgules.
join() : Il convertit la liste en chaîne.
Exemple :

1. Inversez l'entrée donnée-->jeudi est aujourd'hui

Méthode :1 Utiliser des boucles

s = "today is thursday"
reverse = ""
i = 0

while i<len(s):
    reverse = reverse + s[-(i+1)]
    i+=1

print(reverse) #yadsruht si yadot

i = 0 
word = ""
while i<len(reverse):
    if reverse[i]==' ':
        print(word[::-1],end=' ')
        word = ""
        i+=1
        continue
    word = word + reverse[i]
    i+=1
else:
    print(word[::-1])

Méthode :2 Utilisation de la liste

sen = "today is thursday"
l =  sen.split(" ")
print(l)
print(l[::-1])
s = " ".join(l[::-1])
print(s)

Sortie :

yadsruht si yadot
thursday is today

Copie approfondie :

-->En Python, les variables affectées à des objets mutables (comme les listes) contiennent des références aux objets.
--->Si deux variables font référence au même objet, les modifications apportées via une variable sont reflétées dans l'autre.

Exemple :

l1 = [10,20,30]
l2 = l1
print(l1)
print(id(l1))
print(l2)
print(id(l2))
l2[0] = 111
print(l1)
print(l2)

Sortie :

[10, 20, 30]
127285488814912
[10, 20, 30]
127285488814912
[111, 20, 30]
[111, 20, 30]

Copie superficielle :
--->La méthode copy() crée un nouvel objet liste mais copie uniquement les références des éléments (pour les objets imbriqués).
--->Il sera stocké dans une adresse mémoire séparée.

Exemple :

l1 = [10,20,30]
l2 = l1.copy()
print(l1)
print(id(l1))
print(l2)
print(id(l2))
l2[0] = 111
print(l1)
print(l2)

Sortie :

[10, 20, 30]
140500496468800
[10, 20, 30]
140500496470528
[10, 20, 30]
[111, 20, 30]

Ordre lexicographique :

--> l'ordre lexicographique signifie les classer dans l'ordre du dictionnaire, en fonction de l'ordre alphabétique de leurs lettres.

---> Se compare à l'ordre ASCII.(A-Z:65-91),(a-z:97-122)

Utilisation des opérateurs de comparaison :

l1 = ['lakshmi', 'guru', 'kuhan']
l2 = ['lakshmi', 'guru', 'kuhan']
print(l1 == l2)
print(l1 != l2)

l2 = ['guru', 'lakshmi', 'kuhan']
print(l1>l2) 
print(l1<l2)

Sortie :

True
False
True
False

Exercices : Questions d'entretien

  1. Obtenir en sortie : 10 5 10 6 10 7 20 5 20 6 20 7 30 5 30 6 30 7
l1 = [10,20,30]
l2 = [5,6,7]

for no in l1:
    for num in l2:
        print(no, num, end=' ')
    print()

Sortie :

10 5 10 6 10 7 
20 5 20 6 20 7 
30 5 30 6 30 7 
  1. Supprimez si vous obtenez 20 20 à proximité en sortie :
l1 = [10,20,30]
l2 = [8,20,7]

for no in l1:
    for num in l2:
        if no != num:
            print(no, num,end=' ')
    print()

Sortie :

10 8 10 20 10 7 
20 8 20 7 
30 8 30 20 30 7 

Tâches :
1. Trouver des paires dans la liste qui donne la somme : 5
l1 = [1,2,3,4,5,6,7,8,9,0]

Méthode :1

l = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]

pairs = []
for i in l: 
    for j in l:
        if i + j == 5:
            pairs.append((i,j))
print(pairs)

Sortie :

[(1, 4), (2, 3), (3, 2), (4, 1), (5, 0), (0, 5)]

Méthode :2

l = [1,2,3,4,5,6,7,8,9,0]
for i in range(len(l)):
    for j in range(len(l)):
        sum = l[i] + l[j]
        if sum == 5:
            print(l[i], l[j])

Sortie :

1 4
2 3
3 2
4 1
5 0
0 5

2. Trouver le numéro manquant
l = [10,20,30,50,60,70,80,90]

Méthode :1

l = [10, 20, 30, 50, 60, 70, 80, 90]
results = []

for i in range(len(l) - 1):
    if l[i + 1] - l[i] != 10:
        results.append(int((l[i] + l[i + 1]) / 2))

for result in results:
    print(result)

Méthode :2

l = [10,20,30,50,60,70,80,90]
i=0
while i<len(l)-1:
    if l[i+1]-l[i]!=10:
        result=(l[i]+l[i+1])/2
        print(int(result))
    i+=1

Sortie :

40

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!

Déclaration:
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