Python string argument without an encoding

后端 未结 2 1122
臣服心动
臣服心动 2020-12-15 15:24

Am trying to a run this piece of code, and it keeps giving an error saying \"String argument without an encoding\"

ota_packet = ota_packet.encode(\'utf-8\')          


        
相关标签:
2条回答
  • 2020-12-15 15:48
    byteObject = b'\x18,\xa3\xf0A\x93*<bAd\x15K.A\xba'
    print(byteObject)
    print('-----------asbytearray----------')
    
    print('-------As a string------------------')
    o = base64.b64encode(bytes(str(byteObject), 'utf-8'))
    print(o.decode("utf-8"))`enter code here`
    print('--------Nonce as a string------------------')
    
    0 讨论(0)
  • 2020-12-15 15:50

    You are passing in a string object to a bytearray():

    bytearray(content[current_pos:(final_pos)])
    

    You'll need to supply an encoding argument (second argument) so that it can be encoded to bytes.

    For example, you could encode it to UTF-8:

    bytearray(content[current_pos:(final_pos)], 'utf8')
    

    From the bytearray() documentation:

    The optional source parameter can be used to initialize the array in a few different ways:

    • If it is a string, you must also give the encoding (and optionally, errors) parameters; bytearray() then converts the string to bytes using str.encode().
    0 讨论(0)
提交回复
热议问题