def _find_nearest_size(self, size_candidate):
index = bisect.bisect_right(self._possible_sizes, size_candidate)
if index == 0:
return self._possible_sizes[0]
if index >= len(self._possible_sizes):
return self._possible_sizes[-1]
right_size = self._possible_sizes[index]
left_size = self._possible_sizes[index - 1]
if abs(size_candidate - right_size) < abs(size_candidate - left_size):
return right_size
else:
return left_size
评论列表
文章目录