Python 语句似乎对十六进制到十二进制转换器没有影响

Python 语句似乎对十六进制到十二进制转换器没有影响,python,hex,effect,Python,Hex,Effect,当尝试使用十六进制到十进制转换器时,我在这一行中得到一个错误,我将“E”赋值给14,它表示该语句无效 def hex2dec(n): res = [x for x in n] for i in range (len(res)): if res[i] == 'A' or res[i] == 'a': res[i] = 10 if res[i] == 'B' or res[i] == 'b': res[i] = 11 if res[i] ==

当尝试使用十六进制到十进制转换器时,我在这一行中得到一个错误,我将“E”赋值给14,它表示该语句无效

def hex2dec(n):
res = [x for x in n]
for i in range (len(res)):
    if res[i] == 'A' or res[i] == 'a':
        res[i] = 10
    if res[i] == 'B' or res[i] == 'b':
        res[i] = 11
    if res[i] == 'C' or res[i] == 'c':
        res[i] = 12
    if res[i] == 'D' or res[i] == 'd':
        res[i] = 13
    if res[i] == 'E' or res[i] == 'E': ##no effect
        res[i] == 14
    if res[i] == 'F' or res[i] == 'f': 
        res[i] = 15
res2 = [int(x) for x in res]
return res2

这是因为您使用了双等号而不是单等号<代码>=用于逻辑计算,而
=
用于为变量赋值。其次,“E”条件语句中有一个输入错误。第二个条件应该是小写的“e”。另外,请考虑使用列表或字典,而不是26个I/ER语句!

我的代码没有完成,我的逻辑是实际的转换过程,只是在这里没有粘贴到输入中,这只是简单地把输入的每个元素放在一个列表中,请考虑使用列表或字典,而不是26个I/ER语句…E/E-E> E/E <代码>如果RES[i]=‘E’或RES[i]=‘E’:< /代码> ->代码>如果RES[i]=E′或RES[i]=='e':