numpy将二进制字符串转换为十进制
时间: 2023-11-18 13:03:11 浏览: 287
python基础+数据分析三大件Numpy Pandas Matplotlib
可以使用`numpy.packbits()`函数将二进制字符串转换为uint8类型的数组,然后再使用`numpy.unpackbits()`函数将其转换回原来的二进制字符串。下面是一个示例代码:
``` python
import numpy as np
# 二进制字符串
binary_str = "11010101"
# 将二进制字符串转换为uint8类型的数组
binary_arr = np.array([int(c) for c in binary_str], dtype=np.uint8)
# 使用numpy.packbits()函数将二进制数组转换为uint8类型的整数
decimal_num = np.packbits(binary_arr)
print(decimal_num) # 输出: 213
# 使用numpy.unpackbits()函数将uint8类型的整数转换为二进制数组
binary_arr = np.unpackbits(np.array([decimal_num], dtype=np.uint8))
# 将二进制数组转换为二进制字符串
binary_str = "".join([str(c) for c in binary_arr])
print(binary_str) # 输出: 11010101
```
阅读全文