Maison >développement back-end >Tutoriel Python >Comment puis-je convertir des chaînes hexadécimales en entiers en Python ?

Comment puis-je convertir des chaînes hexadécimales en entiers en Python ?

DDD
DDDoriginal
2024-12-18 22:33:11747parcourir

How Can I Convert Hexadecimal Strings to Integers in Python?

Conversion de chaînes hexadécimales en entiers en Python

Python fournit un mécanisme simple pour convertir des chaînes hexadécimales en valeurs entières correspondantes. Une chaîne hexadécimale est généralement représentée par une série de chiffres et le préfixe « 0x » pour indiquer sa nature hexadécimale. Explorons les solutions et leurs implications respectives.

Sans le préfixe '0x'

En l'absence du préfixe '0x', la conversion nécessite une spécification explicite du base. Cette étape est cruciale car Python ne peut pas déduire la base uniquement à partir du contenu de la chaîne. Prenons l'exemple suivant :

x = int("deadbeef", 16)

Ici, la base est explicitement définie sur 16 (hexadécimal), ce qui donne la valeur entière correcte de 3735928559.

Avec le '0x' Préfixe

Notamment, si la chaîne hexadécimale contient le Préfixe '0x', Python affiche un comportement intelligent. Dans ce cas, il n’est pas nécessaire de spécifier explicitement la base. Python détecte automatiquement la présence du préfixe et interprète la chaîne comme hexadécimale. Par exemple :

print(int("0xdeadbeef", 0))

Dans ce scénario, l'argument de base 0 déclenche le comportement de deviner le préfixe. La chaîne hexadécimale est correctement convertie en valeur entière 3735928559. Il est important de noter que la spécification d'une base est toujours nécessaire pour invoquer ce comportement. Si vous omettez le paramètre de base, Python utilisera par défaut la base 10, ce qui entraînera des conversions incorrectes.

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