Traceback (most recent call last): File "D:\zjj\qwer.py", line 42, in <module> b=decrypt(a,"123456") ^^^^^^^^^^^^^^^^^^^ File "D:\zjj\qwer.py", line 31, in decrypt key_str =autobin(key) ^^^^^^^^^^^^ File "D:\zjj\qwer.py", line 13, in autobin list_int.append(int(key_s, 2)) ^^^^^^^^^^^^^ ValueError: invalid literal for int() with base 2: '123456'
时间: 2023-08-02 12:07:51 浏览: 96
浅谈Python traceback的优雅处理
这个错误是因为你在执行 `decrypt` 函数时,传入的 `key` 参数不是二进制字符串,导致在 `autobin` 函数中调用 `int()` 函数时出现了错误。你需要将 `key` 参数转换成二进制字符串再传入 `decrypt` 函数中。可以参考以下代码:
```python
key_str = "123456"
key_bin = ''.join(format(ord(i), '08b') for i in key_str)
b = decrypt(a, key_bin)
```
这样就可以将 `key` 参数转换成二进制字符串,避免出现上述错误。
阅读全文