Opérateurs d'Appartenance et Comparaisons de Types
Dans ce chapitre, nous allons explorer certains aspects nuancés de Python qui peuvent considérablement améliorer la gestion et l'interaction avec les données dans vos programmes — en particulier, les opérateurs d'appartenance et les comparaisons de types.
Voyons comment Alex utilise ces outils :
Les opérateurs d'appartenance sont utiles lorsque vous devez vérifier si des éléments ou des sous-chaînes spécifiques sont présents dans un objet itérable. Un objet itérable en Python est tout ce que vous pouvez parcourir avec une boucle, comme les chaînes de caractères, les listes ou les tuples. Nous explorerons les listes et les tuples plus en détail dans la prochaine section ; pour l'instant, comprenez que les opérateurs d'appartenance peuvent s'appliquer à bien plus que des chaînes de caractères.
Les principaux opérateurs d'appartenance sont in
et not in
, qui renvoient tous deux une valeur booléenne indiquant la présence (ou l'absence) d'un élément.
Puisque vous avez déjà appris l'indexation et le slicing des chaînes de caractères, vous connaissez le concept selon lequel les chaînes sont itérables. Cela signifie que vous pouvez utiliser les opérateurs d'appartenance pour vérifier la présence de sous-chaînes dans des chaînes plus longues.
Considérez l'exemple suivant :
itemName = "Strawberries" in_name = "Straw" in itemName print("Is 'Straw' in 'Strawberries'?", in_name)
Exemple d'application
Supposons que vous gériez les descriptions de produits ou les catégories dans le système de votre épicerie. Il se peut que vous receviez une longue chaîne de détails sur un produit, et que vous deviez rapidement vérifier la présence de mots-clés spécifiques afin de catégoriser ou de mettre en avant certains produits selon les préférences des clients ou les activités promotionnelles :
# Product description from supplier product_description = "Fresh organic milk from local farms, pasteurized and homogenized." # Check if the "organic" and "local" keywords are in the product description is_organic = "organic" in product_description is_local = "local" in product_description # Print the presence of these keywords to decide on marketing strategies print("Is the product organic?", is_organic) print("Is the product locally sourced?", is_local)
Vérification des types de données
Comprendre le type de données utilisé en Python est essentiel, en particulier lors de la gestion des besoins variés d'un système d'épicerie. La fonction type()
est précieuse car elle permet de s'assurer que vous travaillez avec les bons types de données — comme des chaînes de caractères pour les noms de produits, des nombres à virgule flottante pour les prix, et des entiers pour les quantités en stock.
Cela permet non seulement d'éviter les erreurs, mais aussi de rendre les manipulations et comparaisons de données plus appropriées et fiables.
Dans l'exemple suivant, nous illustrons comment type()
peut être utilisé pour vérifier que les données saisies dans le système respectent les critères attendus, ce qui est une nécessité courante dans la gestion des données d'un magasin d'alimentation afin d'éviter les erreurs lors du passage en caisse ou des mises à jour d'inventaire :
# Sample data received from a cashier or inventory management system product_name = "Almond Milk" product_price = "3.49" product_quantity = 30 # Checking if the data types are as expected correct_name_type = type(product_name) == str correct_price_type = type(product_price) == float # Intentional error for demonstration correct_quantity_type = type(product_quantity) == int # Print the results to verify data types print("Is product_name a string?", correct_name_type) print("Is product_price a float?", correct_price_type) # Expected: False, actual data type is a string print("Is product_quantity an integer?", correct_quantity_type) print("Data type check complete. Please review and correct any 'False' outcomes for data corrections.")
Swipe to start coding
Vérifier les détails d’un nouveau produit ajouté au système d’un magasin d’alimentation en utilisant les opérateurs d’appartenance et les comparaisons de types.
- Utiliser les opérateurs d’appartenance pour vérifier si les sous-chaînes
"raw"
et"Imported"
sont présentes dans la variabledescription
. - Affecter les résultats aux variables booléennes
contains_raw
etcontains_Imported
. - Utiliser la fonction
type()
pour vérifier siprice
est unfloat
et sicount
est unint
. - Affecter les résultats de ces vérifications de type à
price_is_float
etcount_is_int
.
Exigences de sortie
- Afficher :
Contains 'raw': <contains_raw>
. - Afficher :
Contains 'Imported': <contains_Imported>
. - Afficher :
Is price a float?: <price_is_float>
. - Afficher :
Is count an integer?: <count_is_int>
.
Remarque :
Python est sensible à la casse, donc
"imported"
et"Imported"
sont des chaînes différentes.
Solution
Merci pour vos commentaires !