Maison > développement back-end > Tutoriel Python > Comment puis-je convertir des mots numériques (par exemple, « un ») en valeurs entières (par exemple, 1) ?

Comment puis-je convertir des mots numériques (par exemple, « un ») en valeurs entières (par exemple, 1) ?

Susan Sarandon
Libérer: 2024-11-24 10:08:11
original
251 Les gens l'ont consulté

How Can I Convert Number Words (e.g.,

Les mots numériques peuvent-ils être convertis en valeurs entières ?

Dans de nombreux scénarios, il est nécessaire de convertir des mots numériques, tels que « un ," en nombres entiers comme 1. Cette conversion peut être cruciale à diverses fins, telles que le traitement des données ou le langage naturel compréhension.

Heureusement, il existe des solutions efficaces disponibles pour faciliter ce processus de conversion. L’une de ces solutions consiste à exploiter un dictionnaire qui mappe les mots numériques à leurs valeurs entières correspondantes. Ce dictionnaire sert de base à une fonction qui convertit de manière itérative les nombres de texte en entiers.

La fonction, bien nommée text2int(), commence par initialiser le dictionnaire si cela n'a pas encore été fait. Ce dictionnaire contient des paires clé-valeur où les clés sont des mots numériques (par exemple, "un") et les valeurs sont des tuples représentant l'échelle (par exemple, 1) et l'incrément (par exemple, 1).

Lors de la conversion d'un nombre de texte (par exemple, « sept milliards cent millions trente et un mille trois cent trente-sept »), la fonction symbolise le texte et traite chaque mot. Si un mot n'est pas trouvé dans le dictionnaire, la fonction déclenche une exception indiquant un mot illégal rencontré.

Pour chaque mot valide, la fonction récupère son échelle et son incrément correspondant dans le dictionnaire. Il met à jour sa valeur actuelle en fonction de ces facteurs et effectue les calculs nécessaires. Le résultat de la conversion est obtenu en ajoutant la valeur actuelle finale au résultat cumulé.

En utilisant cette approche, la fonction peut convertir efficacement une large gamme de nombres de texte en leurs équivalents entiers.

Voici un exemple d'utilisation de la fonction text2int() :

textnum = "seven billion one hundred million thirty one thousand three hundred thirty seven"
result = text2int(textnum)
print(result)  # Output: 7100031337
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:php.cn
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