方法上不支持的操作数类型

我在 Python 类上有一个方法,旨在获得平均数:


def get_average_rating(self):

    rated_books = 0

    book_sum = 0

    for book in self.books:

        rated_books += 1

        book_sum += self.books[book]

    return book_sum/rated_books  

但我收到错误消息:


TypeError: unsupported operand type(s) for +: 'int' and 'NoneType'

我已经尝试解决这个问题好几天了,虽然价值通过了,但我收到了这个警报,并希望将其交付干净。看了很多相关的问题,[像这样][1],但还是看不懂。有人可以在这里投点灯吗?


慕容森
浏览 180回答 1
1回答

狐的传说

当您尝试添加你得到这个错误None对一个int值。在你的情况下,它正在发生在线book_sum += self.books[book]我们知道它book是 in self.books(因为我们在for循环内),但self.books[book]必须是None。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python