I've got a problem. I've this string:
a=O\x8c\x90\x05\xa1\xe2!\xbe
If i use:
c=str.encode(a)
This is the result:
b'O\\x8c\\x90\\x05\\xa1\\xe2!\\xbe'
I need those double backslash to be single backslash and i really need that type of data to be BYTES. I need to return this:
c=b'0\x8c\x90\x05\xa1\xe2!\xbe'
And type(c)==bytes Any idea?
In Python, you use the double slash // operator to perform floor division. This // operator divides the first number by the second number and rounds the result down to the nearest integer (or whole number).
You can use str.decode()
with encoding as unicode-escape
. Then decode it back using the required encoding to get back your bytes array. Example -
c = a.decode('unicode-escape').encode('<required encoding>')
Demo -
>>> a
b'O\\x8c\\x90\\x05\\xa1\\xe2!\\xbe'
>>> c = a.decode('unicode-escape').encode('ISO-8859-1')
>>> c
b'O\x8c\x90\x05\xa1\xe2!\xbe'
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With