Résolue

Utilisation de 'in' pour compter les ponctuations

# Chaînes de caractères # Python

Pour être complet, quid si une phrase est interrogative (se termine donc par "?") ?
Peut-on utiliser un "in" ?

lorem = "Lorem ipsum etc etc"
resultat = 0
for x in [".", "?", "!"]:
    resultat += lorem.count(x)
print(resultat)

Est-ce correct ?

Gabriel Trouvé

Mentor

Bonjour Phil !

Si j'ai bien compris, le but est de savoir si une phrase est interrogative.
Il peut etre intéressant d'utiliser le module re :

import re

lorem = "Lorem ipsum? Et cetera! Autre phrase."

# Utilisation de findall pour capturer les phrases avec leur ponctuation
phrases = re.findall(r'[^.!?]*[.!?]', lorem)

for phrase in phrases:
    # strip() pour nettoyer les espaces superflus au début et à la fin
    if phrase.strip().endswith("?"):
        print("Cette phrase est interrogative :", phrase.strip())

Ce qui je pense est plus efficace.

En fait, car avec le in, tu vérifies juste les occurences sans vérifier si c'est en fin de phrase.

J'espère avoir répondu à ta question :)

Bonne fin d'après-midi

Inscris-toi

(c'est gratuit !)

Inscris-toi

Tu dois créer un compte pour participer aux discussions.

Créer un compte

Rechercher sur le site

Formulaire de contact

Inscris-toi à Docstring

Pour commencer ton apprentissage.

Tu as déjà un compte ? Connecte-toi.