https://github.com/davix3f/hexdutils
Small Python lib for operations with hexadecimals
https://github.com/davix3f/hexdutils
hexadecimal hexadecimal-converter library python-library python-module python2 python3 utility
Last synced: 7 months ago
JSON representation
Small Python lib for operations with hexadecimals
- Host: GitHub
- URL: https://github.com/davix3f/hexdutils
- Owner: davix3f
- License: apache-2.0
- Created: 2018-07-28T22:12:28.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2022-08-06T00:45:21.000Z (over 3 years ago)
- Last Synced: 2025-07-21T10:54:46.653Z (8 months ago)
- Topics: hexadecimal, hexadecimal-converter, library, python-library, python-module, python2, python3, utility
- Homepage:
- Size: 36.1 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# hexdutils
[](https://pypi.python.org/pypi/hexdutils/)
[](https://github.com/davix3f/hexdutils/blob/master/README.md)
**hexdutils** is a small but useful Python library to deal with hexadecimals.
Int to hex, hex to int, text-to-hex, operations between hex.
The code is in **dev** branch.
## Usage
Function names are very clear by themselves, but here's a guide.
### intohex (`int` number, [`bool` hex_prefix, `bool`uppercase])
Returns a the hex value of a number as a string.
* **Arguments**:
* **Mandatory**:
* `int` number: the integer to convert;
* **Optional**:
* `bool` hex_prefix: adds "0x" at the beginning of the output, like the native `hex` Python function. Set as *False* by default;
* `bool` uppercase: every letter in the output is uppercased. Set as *False* by default;
### hextoint (`str` target)
Returns the value of an hex as an integer.
* **Arguments**:
* **Mandatory**:
* `str` target: the hex value to convert. Accepts also "0x" values;
### abctohex (`str` target, `str` conversion, [`bool` verbose, `bool`|`str` prefix, `bool`|`str` individual_prefix])
Returns text converted in hex. Randomization available.
* **Arguments**
* **Mandatory**:
* `str` target: text to convert;
* **Optional**:
* `str` conversion: the letter values to be used. "alphabet" uses the position of each letter in the alphabet to assign an integer value (e.g a=1, b=2, etc.). "ord" uses the result of `ord(letter)` (e.g `ord("a") = 97`). Set as *"ord"* by default:
* `bool` verbose: if *True*, some additional logs will
be printed. Set as *False* by default
* `bool`|`str` prefix: if set as *True*, the "0x" prefix
will be added to the output. Also, you can type a custom
prefix and it will be added. Set as *False* by default.
* `bool`|`str` individual_prefix: if set only as True,
each hex value in the output will have the "0x" prefix.
Like `prefix`, you can set this value to a custom prefix string, and use it instead of "0x". **Requires `prefix=True` to work**.
Set as *False* by default
### hextoabc (`str` target)
* **Arguments**:
* **Mandatory**:
* `str` target: hex value to convert to text.
### Operations
| Function | Operator |
|:-: |:-: |
|**hex_add** | + |
|**hex_subtract**| - |
|**hex_multiply**| * |
|**hex_divide** | / |
|**hex_floor** | // |
|**hex_mod** | % |
|**hex_power** | ** |
Usage: `operation(value_one, value_two, [hex_output, hex_output_prefix. hex_output_upper])`
The arguments for those functions are all the same:
* **Mandatory**:
- `str` value\_one;
- `str` value\_two;
- `bool` hex_output: if set as True, the operation result will be returned as an hex value. If set as False, an integer will be returned;
* **Optional**:
- `bool` hex\_output\_prefix: If set as True, adds "0x" at the beginning of the output. Set as *False* by default;
- `bool` hex\_output\_upper: If set as True, every letter in the output is uppercased. Set as *False* by default;
## The module is not working as it should
Open an issue 🆘
## I fixed something or I'd like to contribute
Open a pull request 📥