Python怎么把字符转成二进制
在Python中,我们可以使用内置的ord()
函数将字符转换为对应的ASCII码,然后再将ASCII码转换为二进制表示。下面我们将详细介绍如何将字符转换为二进制。
示例代码1:将字符转换为ASCII码
char = 'A'
ascii_code = ord(char)
print(f"The ASCII code of '{char}' is: {ascii_code}")
Output:
示例代码2:将ASCII码转换为二进制表示
ascii_code = 65
binary_code = bin(ascii_code)
print(f"The binary representation of ASCII code 65 is: {binary_code}")
Output:
通过以上示例代码,我们可以看到如何将字符转换为ASCII码,然后再将ASCII码转换为二进制表示。
示例代码3:将字符串转换为二进制表示
string = 'deepinout.com'
binary_string = ' '.join(format(ord(char), '08b') for char in string)
print(f"The binary representation of '{string}' is: {binary_string}")
Output:
通过以上示例代码,我们可以将字符串中的每个字符转换为二进制表示,并以空格分隔每个字符的二进制表示。
示例代码4:将二进制表示转换为字符
binary_string = '01100100 01100101 01100101 01110000 01101001 01101110 01101111 01110101 01110100 00101110 01100011 01101111 01101101'
string = ''.join(chr(int(binary, 2)) for binary in binary_string.split())
print(f"The binary representation '{binary_string}' is: {string}")
Output:
通过以上示例代码,我们可以将二进制表示转换为对应的字符。
示例代码5:将二进制表示转换为十六进制表示
binary_string = '01100100 01100101 01100101 01110000 01101001 01101110 01101111 01110101 01110100 00101110 01100011 01101111 01101101'
hex_string = ' '.join(hex(int(binary, 2))[2:] for binary in binary_string.split())
print(f"The hexadecimal representation of '{binary_string}' is: {hex_string}")
Output:
通过以上示例代码,我们可以将二进制表示转换为对应的十六进制表示。
示例代码6:将二进制表示转换为Base64编码
import base64
binary_string = '01100100 01100101 01100101 01110000 01101001 01101110 01101111 01110101 01110100 00101110 01100011 01101111 01101101'
base64_string = base64.b64encode(''.join(chr(int(binary, 2)) for binary in binary_string.split()).encode()).decode()
print(f"The Base64 encoding of '{binary_string}' is: {base64_string}")
Output:
通过以上示例代码,我们可以将二进制表示转换为对应的Base64编码。
示例代码7:将二进制表示转换为十进制表示
binary_string = '01100100 01100101 01100101 01110000 01101001 01101110 01101111 01110101 01110100 00101110 01100011 01101111 01101101'
decimal_string = ' '.join(str(int(binary, 2)) for binary in binary_string.split())
print(f"The decimal representation of '{binary_string}' is: {decimal_string}")
Output:
通过以上示例代码,我们可以将二进制表示转换为对应的十进制表示。
示例代码8:将二进制表示转换为八进制表示
binary_string = '01100100 01100101 01100101 01110000 01101001 01101110 01101111 01110101 01110100 00101110 01100011 01101111 01101101'
octal_string = ' '.join(oct(int(binary, 2))[2:] for binary in binary_string.split())
print(f"The octal representation of '{binary_string}' is: {octal_string}")
Output:
通过以上示例代码,我们可以将二进制表示转换为对应的八进制表示。
示例代码9:将二进制表示转换为十进制整数
binary_string = '01100100 01100101 01100101 01110000 01101001 01101110 01101111 01110101 01110100 00101110 01100011 01101111 01101101'
decimal_integer = int(''.join(binary for binary in binary_string.split()), 2)
print(f"The decimal integer representation of '{binary_string}' is: {decimal_integer}")
Output:
通过以上示例代码,我们可以将二进制表示转换为对应的十进制整数。
示例代码10:将二进制表示转换为十六进制整数
binary_string = '01100100 01100101 01100101 01110000 01101001 01101110 01101111 01110101 01110100 00101110 01100011 01101111 01101101'
hex_integer = int(''.join(binary for binary in binary_string.split()), 2)
hex_string = hex(hex_integer)
print(f"The hexadecimal integer representation of '{binary_string}' is: {hex_string}")
Output:
通过以上示例代码,我们可以将二进制表示转换为对应的十六进制整数。
示例代码11:将二进制表示转换为八进制整数
binary_string = '01100100 01100101 01100101 01110000 01101001 01101110 01101111 01110101 01110100 00101110 01100011 01101111 01101101'
octal_integer = int(''.join(binary for binary in binary_string.split()), 2)
octal_string = oct(octal_integer)
print(f"The octal integer representation of '{binary_string}' is: {octal_string}")
Output:
通过以上示例代码,我们可以将二进制表示转换为对应的八进制整数。
示例代码12:将二进制表示转换为十进制浮点数
binary_string = '0100000001100110000000000000000000000000000000000000000000000000'
decimal_float = int(binary_string, 2) / (2**52)
print(f"The decimal float representation of '{binary_string}' is: {decimal_float}")
Output:
通过以上示例代码,我们可以将二进制表示转换为对应的十进制浮点数。
示例代码13:将二进制表示转换为十六进制浮点数
binary_string = '0100000001100110000000000000000000000000000000000000000000000000'
hex_float = hex(int(binary_string, 2))
print(f"The hexadecimal float representation of '{binary_string}' is: {hex_float}")
Output:
通过以上示例代码,我们可以将二进制表示转换为对应的十六进制浮点数。
示例代码14:将二进制表示转换为科学计数法表示
binary_string = '0100000001100110000000000000000000000000000000000000000000000000'
scientific_notation = format(int(binary_string, 2), 'e')
print(f"The scientific notation representation of '{binary_string}' is: {scientific_notation}")
Output: