models.py 文件源码

python
阅读 19 收藏 0 点赞 0 评论 0

项目:strans-pyra 作者: teresinahc 项目源码 文件源码
def nearest(cls, lat, long, **kwargs):
        """
        Search for the nearest buses from `lat` and `long`
        params.

        You should specify the buses to search, default is
        `Buses.all()`.

        @param lat: A float coercible value of latitude (eg.: -5.065533).
        @param long: A float coercible value of longitude (eg.: -42.065533).

        keywords params:
            buses:
                A list of `Stop` instance.
            route:
                A `Route` instance.

        @return: A tuple with a `Bus` object and a `Distance`
            object (see geopy.distance).
        """
        if kwargs.get('buses', False):
            buses = kwargs['buses']
        elif kwargs.get('route', False):
            buses = kwargs['route'].get_buses()
        else:
            buses = cls.all()

        dists = map(lambda bus: distance(
                # Avoid using cached location, to avoid more requests.
                (bus.__lat__, bus.__long__),
                (lat, long)
            ), buses)

        return min(zip(dists, buses))[::-1]
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号