Mettre une chaîne en majuscules

Python:
Mettre une chaîne en majuscules

Comment faire :

Utilisation de la méthode intégrée de Python :

Python dispose d’une méthode intégrée .capitalize() pour les chaînes de caractères permettant de réaliser cette tâche facilement.

my_string = "hello world"
capitalized_string = my_string.capitalize()
print(capitalized_string)

Sortie :

Hello world

Voici ma propre méthode capitalize() personnalisée que j’utilise pour construire ce site. Il fallait que je m’assure que des mots spéciaux comme HTML restent toujours en majuscules. Cela démontre également l’utilisation de doctests :

def capitalize(string: str) -> str:
    """
    Mettre en majuscule une chaîne, c'est-à-dire rendre la première lettre en majuscule.
    Gérer des cas spéciaux comme "HTML".

    >>> capitalize("this is html, csv, xml, and http (no REPL).")
    'This is HTML, CSV, XML, and HTTP (no REPL).'

    >>> capitalize("this is json, VBA, an IDE, and yaml in the CLI.")
    'This is JSON, VBA, an IDE, and YAML in the CLI.'
    """
    return (
        string
            .capitalize()
            .replace('cli',  'CLI')
            .replace('csv',  'CSV')
            .replace('html', 'HTML')
            .replace('http', 'HTTP')
            .replace('ide',  'IDE')
            .replace('json', 'JSON')
            .replace('repl', 'REPL')
            .replace('vba',  'VBA')
            .replace('xml',  'XML')
            .replace('yaml', 'YAML')
    )

Gérer plusieurs mots :

Pour les scénarios où vous souhaitez que chaque mot dans une chaîne commence par une lettre majuscule (comme les titres), la méthode .title() peut être appliquée.

my_title = "python programming essentials"
title_case = my_title.title()
print(title_case)

Sortie :

Python Programming Essentials

Utilisation de bibliothèques tierces :

Alors que la bibliothèque standard de Python est équipée pour la capitalisation de base des chaînes, des bibliothèques telles que textblob peuvent offrir un contrôle plus nuancé, en particulier pour le traitement du langage naturel.

Tout d’abord, assurez-vous d’avoir textblob installé :

pip install textblob

Ensuite, utilisez-le pour mettre en majuscule des chaînes, en gardant à l’esprit que la capitalisation de textblob peut fonctionner différemment en fonction du contexte d’utilisation :

from textblob import TextBlob

my_sentence = "this is a test sentence"
blob = TextBlob(my_sentence)
capitalized_blob = TextBlob(blob.string.capitalize())
print(capitalized_blob)

Sortie :

This is a test sentence

Rappelez-vous, bien que les méthodes capitalize() et title() soient universellement utiles, l’exploitation de bibliothèques comme textblob peut offrir une flexibilité supplémentaire pour des applications spécifiques.