在Python中输出二进制数主要有以下三种方法,涵盖不同场景下的应用:
一、直接使用二进制字面量
通过`0b`前缀直接表示二进制数,适用于硬编码场景。
```python
binary_num = 0b1010 二进制数
print(binary_num) 输出: 10
```
二、使用内置函数转换
整数转二进制 - `bin()`函数:将整数转换为二进制字符串,返回值以`0b`开头。
```python
num = 10
binary_str = bin(num) 输出: 0b1010
print(binary_str)
```
- `int()`函数:将二进制字符串转换为整数。
```python
binary_str = '1010'
num = int(binary_str, 2) 输出: 10
print(num)
```
- `format()`函数:格式化输出二进制字符串,支持去掉`0b`前缀。
```python
num = 10
binary_str = format(num, 'b') 输出: 1010
print(binary_str)
```
字符转二进制
- 先通过`ord()`获取字符的ASCII码,再使用`bin()`转换。
```python
char = 'A'
ascii_val = ord(char)
binary_str = bin(ascii_val) 输出: 0b1000001
print(binary_str)
```
三、处理二进制数据
bytes对象: 用于存储二进制数据,支持读写文件。 ```python data = bytes([65, 66, 67]) b'ABC' print(data) ``` 文件读写
```python
with open('test.bin', 'wb') as f:
f.write(b'Hello, binary world!')
with open('test.bin', 'rb') as f:
data = f.read()
print(data) 输出: b'Hello, binary world!'
```
总结
基础转换:优先使用`bin()`函数,结合`int()`或`format()`灵活处理。
二进制数据操作:通过`bytes`对象和文件操作实现。
字符处理:需先转换为ASCII码再二进制。