Как преобразовать целое число в шестнадцатеричное без дополнительных «0x» ведущих и «L» конечных символов в Python?

Я пытаюсь преобразовать большое целое число в шестнадцатеричное число, но в результате я получаю дополнительные «0x» в начале и «L» в и. Есть ли способ удалить их. Благодарю. Число:

44199528911754184119951207843369973680110397865530452125410391627149413347233422 34022212251821456884124472887618492329254364432818044014624401131830518339656484 40715571509533543461663355144401169142245599341189968078513301836094272490476436 03241723155291875985122856369808620004482511813588136695132933174030714932470268 09981252011612514384959816764532268676171324293234703159707742021429539550603471 00313840833815860718888322205486842202237569406420900108504810 

В шестнадцатеричном я получаю:

 0x2ef1c78d2b66b31edec83f695809d2f86e5d135fb08f91b865675684e27e16c2faba5fcea548f3 b1f3a4139942584d90f8b2a64f48e698c1321eee4b431d81ae049e11a5aa85ff85adc2c891db9126 1f7f2c1a4d12403688002266798ddd053c2e2670ef2e3a506e41acd8cd346a79c091183febdda3ca a852ce9ee2e126ca8ac66d3b196567ebd58d615955ed7c17fec5cca53ce1b1d84a323dc03e4fea63 461089e91b29e3834a60020437db8a76ea85ec75b4c07b3829597cfed185a70eeaL 

  • Python: просмотр всех файлов в шестнадцатеричном формате
  • Преобразование значения в 4 байта в python
  • hex string для символа в python
  • Печатать строку как шестнадцатеричные байты?
  • Проверьте, является ли строка шестнадцатеричной
  • Шрифт Python Шестнадцатеричный
  • Как просто python печатать "\ xaa \ xbb \ xcc \ xdd" как 0xddccbbaa?
  • 4 Solutions collect form web for “Как преобразовать целое число в шестнадцатеричное без дополнительных «0x» ведущих и «L» конечных символов в Python?”

    Конечно, идите и удалите их.

     hex(bignum).rstrip("L").lstrip("0x") or "0" 

    (Прошел маршрут strip() так что он все равно будет работать, если лишние персонажи не будут там.)

    0x – это буквальное представление шестнадцатеричных чисел. И L в конце означает, что это длинное целое число.

    Если вам просто нужно шестнадцатеричное представление числа в виде строки без 0x и L , вы можете использовать форматирование строк с помощью %x .

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

    Как и в ответ Правеена, вы также можете напрямую использовать встроенный format() .

     >>> a = 44199528911754184119951207843369973680110397 >>> format(a, 'x') '1fb62bdc9e54b041e61857943271b44aafb3d' 

    Будьте осторожны при использовании принятого ответа, поскольку lstrip('0x') также удалит любые lstrip('0x') нули, которые могут быть не такими, как вы хотите, см. Ниже:

     >>> account = '0x000067' >>> account.lstrip('0x') '67' >>> 

    Если вы уверены, что префикс '0x' всегда будет там, его можно удалить просто следующим образом:

     >>> hex(42) '0x2a' >>> hex(42)[2:] '2a' >>> 

    [2:] получит каждый символ в строке, за исключением первых двух.

    Python - лучший язык программирования в мире.