错误类型错误:“str”和“str”的操作数类型不受支持

2024-07-06 23:19:08 发布

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

我的编码有点错误

ki = raw_input("Enter Initial Key in HEX 20 bit :") 
IV = raw_input("Enter Initial vector in HEX 16 bit :")

for i in xrange(0,20,2):
if(ki[i]>='0' and ki[i]<='9'):
    ie=ki[i]-'0'
elif (ki[i]>='a' and ki[i]<='f'):
    ie=ki[i]-'a'+10
elif (ki[i]>='A' and ki[i]<='F'):
    ie=ki[i]-'A'+10

这个错误

Traceback (most recent call last): File "C:/Users/MrX/PycharmProjects/grain/grain.py", line 16, in ie=ki[i]-'0'; TypeError: unsupported operand type(s) for -: 'str' and 'str'

我希望你能帮我修好它。谢谢


Tags: andinforinputraw错误bitie
1条回答
网友
1楼 · 发布于 2024-07-06 23:19:08

您正在对字符串调用-操作数:

ie = ki[i] - 'a' + 10

我想您认为Python中的简单引号指的是字符的ASCII值。然而,在Python中,单引号和双引号是严格等价的,它们都表示字符串。在

您需要的是ord函数:

^{pr2}$

相关问题 更多 >