python字符串转2进制
时间: 2023-11-16 21:00:52 浏览: 118
Python中可以使用bin()函数将整数转换为二进制字符串,也可以使用format()函数将整数转换为指定进制的字符串。如果要将字符串转换为二进制字符串,可以先将字符串转换为bytes类型,再使用bin()函数将bytes类型转换为二进制字符串。具体操作如下:
```python
# 将字符串转换为bytes类型
s = 'hello'
b = bytes(s, encoding='utf-8')
# 将bytes类型转换为二进制字符串
binary_str = ''.join(format(byte, '08b') for byte in b)
print(binary_str)
```
上述代码中,首先将字符串s转换为bytes类型b,然后使用format()函数将每个字节转换为8位二进制字符串,最后使用join()函数将所有二进制字符串拼接起来。运行上述代码,输出结果为:
```
0110100001100101011011000110110001101111
```
相关问题
python 字符串转16进制字符串
要将Python字符串转换为16进制字符串,可以使用以下方法:
```python
# 将字符串转为字节
data = "hello world"
data_bytes = data.encode()
# 将字节转为16进制字符串
hex_string = data_bytes.hex()
print(hex_string)
```
输出结果为:68656c6c6f20776f726c64
python 字符串转十六进制字符串
以下是Python中字符串转十六进制字符串的函数示例:
```python
def to_hex(string):
''' 字符串转十六进制 '''
hex_string = [] # 初始化转换后的十六进制字符列表。
for i in string: # 遍历字符串。
hex_string.append(hex(ord(i))[2:].zfill(4).upper()) # 用“切片”[:3]方式截取转换后的十六进制字符串除十六进制标识字符外的字符串。由于有的中文字符需四位十六进制字符表示,所以用str.zfill(4)设置成每个字符四位十六进制字符(不足四位前置0)。为了好看,我用str.upper()方法转小写字母为大写。
return ''.join(hex_string) # 返回“无缝链接”后的十六进制字符串。
```
使用示例:
```python
string = 'hello world'
hex_string = to_hex(string)
print(hex_string) # 输出:48656C6C6F20576F726C64
```
阅读全文