str不是可调用对象python

时间:2019-02-16 13:19:24

标签: python string object callable

我对为什么我的代码导致此错误感到好奇?
有人可以向我展示一些见识作为解决此问题的方法以及引起此错误的原因吗?

错误:

chunk += " " (16 - len(chunk) % 16)
TypeError: 'str' object is not callable

我的代码:

def upload(item):
    with open(item, "rb") as fp:
        while True:
            chunk = fp.read(64*1024)

            if len(chunk) == 0:
                break
            elif len(chunk) % 16 != 0:
                chunk += " " (16 - len(chunk) % 16)

            self.s.send(encrypt(self.key, chunk, self.iv))

    self.s.send("DONE")
    self.update()

1 个答案:

答案 0 :(得分:1)

chunk += " " (16 - len(chunk) % 16)更改为:

 chunk += " " * (16 - len(chunk) % 16)

如果您什么都没放,则意味着" "是可调用的,并且您正在尝试使用16 - len(chunk) % 16参数对其进行调用。