一致的 char 到 int
Consistent char to int
我正在实现 RNN 模型,我需要根据字典将所有字符转换为整数,如下所示。
charset={'!',
'#',
'(',
')',
'+',
'-',
'/',
'1',
'2',
'3',
'4',
'=',
'B',
'C',
'E',
'F',
'H',
'I',
'N',
'O',
'P',
'S',
'[',
'\',
']',
'l',
'r'}
我使用下面的方法根据字典将charset
转换成整数
char_to_int = dict((c,i) for i,c in enumerate(charset))
这给了我以下输出。
{'2': 0, 'F': 1, '-': 2, 'O': 3, '1': 4, 'E': 5, '4': 6, '!':
7, 'H': 8, 'S': 9, '/': 10, '\': 11, '#': 12, 'l': 13, '=':
14, 'P': 15, 'C': 16, '+': 17, 'r': 18, 'B': 19, '(': 20, ')':
21, ']': 22, '3': 23, '[': 24, 'I': 25, 'N': 26}
现在我关闭我的 Jupyternotebook 并再次加载数据并再次 运行 以上两行代码。这次映射不同如下。
{']': 0, '\': 1, '(': 2, '=': 3, '!': 4, 'F': 5, '3': 6, 'S':
7, '4': 8, 'N': 9, '+': 10, 'l': 11, 'H': 12, 'E': 13, 'C': 14,
'I': 15, '-': 16, 'B': 17, ')': 18, 'P': 19, '[': 20, 'r': 21,
'1': 22, '/': 23, '2': 24, '#': 25, 'O': 26}
每次 运行 我怎样才能保持一致 char_to_int
。
set
Python 中的对象没有顺序。如果您将 charset
设为 list 而不是 set,那么您的结果将在运行之间保持一致。
我正在实现 RNN 模型,我需要根据字典将所有字符转换为整数,如下所示。
charset={'!',
'#',
'(',
')',
'+',
'-',
'/',
'1',
'2',
'3',
'4',
'=',
'B',
'C',
'E',
'F',
'H',
'I',
'N',
'O',
'P',
'S',
'[',
'\',
']',
'l',
'r'}
我使用下面的方法根据字典将charset
转换成整数
char_to_int = dict((c,i) for i,c in enumerate(charset))
这给了我以下输出。
{'2': 0, 'F': 1, '-': 2, 'O': 3, '1': 4, 'E': 5, '4': 6, '!': 7, 'H': 8, 'S': 9, '/': 10, '\': 11, '#': 12, 'l': 13, '=': 14, 'P': 15, 'C': 16, '+': 17, 'r': 18, 'B': 19, '(': 20, ')': 21, ']': 22, '3': 23, '[': 24, 'I': 25, 'N': 26}
现在我关闭我的 Jupyternotebook 并再次加载数据并再次 运行 以上两行代码。这次映射不同如下。
{']': 0, '\': 1, '(': 2, '=': 3, '!': 4, 'F': 5, '3': 6, 'S': 7, '4': 8, 'N': 9, '+': 10, 'l': 11, 'H': 12, 'E': 13, 'C': 14, 'I': 15, '-': 16, 'B': 17, ')': 18, 'P': 19, '[': 20, 'r': 21, '1': 22, '/': 23, '2': 24, '#': 25, 'O': 26}
每次 运行 我怎样才能保持一致 char_to_int
。
set
Python 中的对象没有顺序。如果您将 charset
设为 list 而不是 set,那么您的结果将在运行之间保持一致。