方法上不支持的操作数类型
Unsupported operand type on method
我在 Python class 上有一个方法,旨在获得平均数:
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'
我已经尝试解决这个问题好几天了,虽然价值通过了,但我收到了这个警报,并且想把它交付干净。我看到很多相关问题,[like this][1],但仍然无法理解。有人可以在这里亮灯吗?
提前致谢
当您尝试将 None
添加到 int
值时会出现该错误。在您的情况下,它发生在
线上
book_sum += self.books[book]
我们知道 book
在 self.books
中(因为我们在 for
循环中),但是 self.books[book]
必须是 None
。
我在 Python class 上有一个方法,旨在获得平均数:
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'
我已经尝试解决这个问题好几天了,虽然价值通过了,但我收到了这个警报,并且想把它交付干净。我看到很多相关问题,[like this][1],但仍然无法理解。有人可以在这里亮灯吗?
提前致谢
当您尝试将 None
添加到 int
值时会出现该错误。在您的情况下,它发生在
book_sum += self.books[book]
我们知道 book
在 self.books
中(因为我们在 for
循环中),但是 self.books[book]
必须是 None
。