使用循环生成字典

2024-09-29 23:14:58 发布

您现在位置:Python中文网/ 问答频道 /正文

我正试图通过pythonshell创建一个二进制2acii,反之亦然Dictonary。我有点卡住了:

  1. 我做了一个新的Dictonary
  2. 我要声明,从0到127
  3. 做一个循环遍历所有选项

我是新来的。你知道吗

binary2ascii = {}, 
format (127,"08b")   
for i in range(0,127): chr(i)

Tags: informat声明for选项二进制rangechr
2条回答

同样,你也可以不用字典来完成这样的“翻译”,比如:

def asc2binii(ch):
    return bin(ord(ch))

def bin2ascii(bin_int):
    return chr(int(bin_int, 2))

char_input="a"
binary_repr = asc2binii(char_input)
print(binary_repr)
ch_returned = bin2ascii(binary_repr)
print(ch_returned)

将打印:

0b1100001
a

听起来您需要多花点时间学习Python基础知识。你知道吗

不管怎样,这里有一种方法可以制作一个字典,它既可以处理将位字符串转换为字符的过程,也可以处理将位字符串转换为字符的过程。我只是在range(65, 70)上循环以保持输出较小。你知道吗

from pprint import pprint

binary2ascii = {}
for i in range(65, 70):
    bits = format(i, "08b")
    char = chr(i)
    binary2ascii[bits] = char
    binary2ascii[char] = bits

pprint(binary2ascii)    

输出

{'01000001': 'A',
 '01000010': 'B',
 '01000011': 'C',
 '01000100': 'D',
 '01000101': 'E',
 'A': '01000001',
 'B': '01000010',
 'C': '01000011',
 'D': '01000100',
 'E': '01000101'}

相关问题 更多 >

    热门问题