【发布时间】:2020-06-11 19:09:57
【问题描述】:
我是 python 新手,起初我正在尝试为我的项目实现代码,我的错误代码是 'int' 类型的对象没有 len() 这是我的代码并添加了 str 来解决问题
xored_value = ord(Mblocks[i%len(Mblocks)]) ^ ord(Cblocks[i%len(Cblocks)])
现在我得到'int'对象如果在这一行中是不可下标的
xored_value = ord(Mblocks[i%len(str(Mblocks))]) ^ ord(Cblocks[i%len(str(Cblocks))])
如果我把它改成
xored_value = ord(Mblocks(i%len(str(Mblocks)))=)) ^ ord(Cblocks(i%len(str(Cblocks))))
我收到'str' object is not callable。
这是我的全部功能:
def xor_two_str(Mblocks,Cblocks):
xored = []
for i in range(max(len(str(Mblocks)), len(str(Cblocks)))):
xored_value = ord(Mblocks[i%len(str(Mblocks))]) ^ ord(Cblocks[i%len(str(Cblocks))])
xored.append(hex(xored_value)[2:])
return ''.join(xored)
有什么帮助吗?
【问题讨论】:
-
什么是 Mblocks 和 Cblocks?它们是字符串列表还是字符串本身?由于它没有 len 属性,我假设它不是这些。能否提供 Mblocks 和 Cblocks 的输入示例?
标签: python