讨论数量: 
            
            
    
            MESSAGE = '''
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
'''代表的不是一串连续的”a”, 而是每一行都会被加入一个换行符 ‘\n’ 
你的表Rmdiction1中没有’\n’的key, 所以在 for i1 in Rmdiction1 就会找不到,
也就没有Return Rmdiction1[i1], 最后就自行Return None
如果你真的要这样表达字符串, 只能再加下面这一行, 去掉’\n’, 就OK了 ! 
MESSAGE = MESSAGE.replace('\n', '')另外, encode像底下这样作, 不就失去用字典的意义了
def encode(x1):
    for i1 in Rmdiction1:
        if i1 == x1:
            print(Rmdiction1[i1])
            return Rmdiction1[i1]直接如下就OK了
receivelist1.append(Rmdiction1[i3])之所以出现none,是因为你自定义函数encode的问题,由于当if条件不满足时,默认返回none
试一试这段代码就不会有这样的问题
Rmdiction1 = {"a":"01", "b": "02", "c":"03"}
MESSAGE = '''aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'''
receivelist1 = []
for i in MESSAGE:
    if i in Rmdiction1.keys():
        receivelist1.append(Rmdiction1[i])
print(receivelist1) 
          

 
         
             
             
             
           
           关于 LearnKu
                关于 LearnKu
               
                     
                     
                     粤公网安备 44030502004330号
 粤公网安备 44030502004330号 
 
代表的不是一串连续的”a”, 而是每一行都会被加入一个换行符 ‘\n’
你的表Rmdiction1中没有’\n’的key, 所以在
for i1 in Rmdiction1就会找不到,也就没有
Return Rmdiction1[i1], 最后就自行Return None如果你真的要这样表达字符串, 只能再加下面这一行, 去掉’\n’, 就OK了 !
另外, encode像底下这样作, 不就失去用字典的意义了
直接如下就OK了