python - python - 如何在Python中没有额外的 '0x'前导字符和 'L'尾随字符的情况下将整数转换为十六进制?

标签 python hex

我正在尝试将大整数转换为十六进制,但结果我在开头得到了额外的“0x”,在 and 处得到了“L”。有什么办法可以去掉它们。谢谢。 号码是:

44199528911754184119951207843369973680110397865530452125410391627149413347233422
34022212251821456884124472887618492329254364432818044014624401131830518339656484
40715571509533543461663355144401169142245599341189968078513301836094272490476436
03241723155291875985122856369808620004482511813588136695132933174030714932470268
09981252011612514384959816764532268676171324293234703159707742021429539550603471
00313840833815860718888322205486842202237569406420900108504810

我得到的是十六进制:

0x2ef1c78d2b66b31edec83f695809d2f86e5d135fb08f91b865675684e27e16c2faba5fcea548f3
b1f3a4139942584d90f8b2a64f48e698c1321eee4b431d81ae049e11a5aa85ff85adc2c891db9126
1f7f2c1a4d12403688002266798ddd053c2e2670ef2e3a506e41acd8cd346a79c091183febdda3ca
a852ce9ee2e126ca8ac66d3b196567ebd58d615955ed7c17fec5cca53ce1b1d84a323dc03e4fea63
461089e91b29e3834a60020437db8a76ea85ec75b4c07b3829597cfed185a70eeaL

最佳答案

0x 是十六进制数字的文字表示。而末尾的 L 表示它是一个 Long 整数。

如果您只想将数字的十六进制表示为不带 0xL 的字符串,则可以使用带有 %x 的字符串格式.

>>> a = 44199528911754184119951207843369973680110397
>>> hex(a)
'0x1fb62bdc9e54b041e61857943271b44aafb3dL'
>>> b = '%x' % a
>>> b
'1fb62bdc9e54b041e61857943271b44aafb3d'

关于python - python - 如何在Python中没有额外的 '0x'前导字符和 'L'尾随字符的情况下将整数转换为十六进制?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10218164/

相关文章:

python - 从 Python : passing list of numpy pointers 调用 C

python - 指数股票价格在开始日期返回至 100

python - 在 linux 中设置 python 脚本的日期/时间

perl - 当字节存储在 Perl 中的不同变量中时,如何从其字节创建 Unicode 字符?

javascript - 将 Unicode 字符转换为十六进制会导致额外字节

objective-c - 如何使用 Objective C 使用 Bluebamboo 设备打印图像?

python - 汉明距离Python改进

python - 增加在 Python 中进行单元测试的类的日志记录详细程度

c - printf() 格式化为十六进制

c# - 将十六进制字符串转换为其在 C# 中的数值