我正在尝试用 python3 编写 RSA 代码。我需要将用户输入字符串(包含任何字符,而不仅仅是数字)转换为整数,然后对其进行加密。在 Python 3.6 中,在没有第 3 方模块的情况下将字符串转换为整数的最佳方法是什么?
如何将字符串编码为整数远非唯一......有很多方法!这是其中之一:
strg = 'user input'
i = int.from_bytes(strg.encode('utf-8'), byteorder='big')
则另一个方向的转换为:
s = int.to_bytes(i, length=len(strg), byteorder='big').decode('utf-8')
是的,在转换回来之前您需要知道结果字符串的长度。如果length
太大,字符串将被填充chr(0)
从左边开始(与byteorder='big'
); if length
太小,int.to_bytes
将提出OverflowError: int too big to convert
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)