Maison >développement back-end >Tutoriel Python >Comment puis-je convertir efficacement une chaîne avec des séparateurs de milliers en un nombre en Python ?

Comment puis-je convertir efficacement une chaîne avec des séparateurs de milliers en un nombre en Python ?

DDD
DDDoriginal
2024-12-01 10:17:14908parcourir

How Can I Efficiently Convert a String with Thousands Separators to a Number in Python?

Conversion d'une chaîne avec des séparateurs de milliers en nombre en Python

Question :

Python renvoie une ValueError lors de la tentative de conversion d'un chaîne avec des virgules comme séparateurs de milliers en un entier à l'aide de la fonction int(). Existe-t-il une méthode plus efficace pour effectuer cette conversion ?

Réponse :

Le module locale de Python fournit une solution. En définissant les paramètres régionaux sur 'en_US.UTF-8', vous activez l'interprétation correcte des virgules comme séparateurs de milliers.

import locale
locale.setlocale( locale.LC_ALL, 'en_US.UTF-8' )

Avec les paramètres régionaux définis, vous pouvez utiliser locale.atoi() et locale. Fonctions atof() pour convertir les représentations sous forme de chaîne en entiers et en flottants, respectivement :

locale.atoi('1,000,000')
# Results in 1,000,000

locale.atof('1,000,000.53')
# Results in 1,000,000.53

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