我正在尝试根据字母'h'打印ascii表。例如,如果我希望h等于256,我想根据h的值打印出其他128个字符中的每一个。如果我希望h等于1005,我还需要根据h的位置打印所有剩余的ASCII字符。我觉得我下面的代码在动作'index + n'的正确轨道上,但我不太确定:
import string
values = dict()
for index, letter in enumerate(string.printable):
values[letter] = index + 'some number'
print values
答案 0 :(得分:0)
好的,首先你必须在Python中生成一个ASCII表。 string
不能这样做,但是你知道索引包含0到127,chr
函数输出索引的给定字符。
您现在可以检索h
(或任何其他字母)的索引。您可以推导出偏移量,并将此偏移量应用于其他字母。以下是计算所有内容的代码:
h_desired_index = 1200
ascii_table = list(map(chr, range(128)))
h_index = ascii_table.index('h')
delta_index = h_desired_index - h_index
new_table = {}
for index, character in enumerate(ascii_table):
new_table[character] = index + delta_index
我得到的输出:
{'\x00': 1096,
'\x01': 1097,
'\x02': 1098,
'\x03': 1099,
'\x04': 1100,
'\x05': 1101,
'\x06': 1102,
'\x07': 1103,
'\x08': 1104,
'\t': 1105,
'\n': 1106,
'\x0b': 1107,
'\x0c': 1108,
'\r': 1109,
'\x0e': 1110,
'\x0f': 1111,
'\x10': 1112,
'\x11': 1113,
'\x12': 1114,
'\x13': 1115,
'\x14': 1116,
'\x15': 1117,
'\x16': 1118,
'\x17': 1119,
'\x18': 1120,
'\x19': 1121,
'\x1a': 1122,
'\x1b': 1123,
'\x1c': 1124,
'\x1d': 1125,
'\x1e': 1126,
'\x1f': 1127,
' ': 1128,
'!': 1129,
'"': 1130,
'#': 1131,
'$': 1132,
'%': 1133,
'&': 1134,
"'": 1135,
'(': 1136,
')': 1137,
'*': 1138,
'+': 1139,
',': 1140,
'-': 1141,
'.': 1142,
'/': 1143,
'0': 1144,
'1': 1145,
'2': 1146,
'3': 1147,
'4': 1148,
'5': 1149,
'6': 1150,
'7': 1151,
'8': 1152,
'9': 1153,
':': 1154,
';': 1155,
'<': 1156,
'=': 1157,
'>': 1158,
'?': 1159,
'@': 1160,
'A': 1161,
'B': 1162,
'C': 1163,
'D': 1164,
'E': 1165,
'F': 1166,
'G': 1167,
'H': 1168,
'I': 1169,
'J': 1170,
'K': 1171,
'L': 1172,
'M': 1173,
'N': 1174,
'O': 1175,
'P': 1176,
'Q': 1177,
'R': 1178,
'S': 1179,
'T': 1180,
'U': 1181,
'V': 1182,
'W': 1183,
'X': 1184,
'Y': 1185,
'Z': 1186,
'[': 1187,
'\\': 1188,
']': 1189,
'^': 1190,
'_': 1191,
'`': 1192,
'a': 1193,
'b': 1194,
'c': 1195,
'd': 1196,
'e': 1197,
'f': 1198,
'g': 1199,
'h': 1200,
'i': 1201,
'j': 1202,
'k': 1203,
'l': 1204,
'm': 1205,
'n': 1206,
'o': 1207,
'p': 1208,
'q': 1209,
'r': 1210,
's': 1211,
't': 1212,
'u': 1213,
'v': 1214,
'w': 1215,
'x': 1216,
'y': 1217,
'z': 1218,
'{': 1219,
'|': 1220,
'}': 1221,
'~': 1222,
'\x7f': 1223}