为什么我的方法不调用另一个(未定义的变量)

马库斯·德尔·托罗

嗨,我做了很多尝试,但我不知道为什么要haversine()在x上保存时出现以下错误:undefined Variable Haversine唯一有效的方法是当我将Haversine函数放入函数中时

class GetRide(APIView):
    authentication_classes = (TokenAuthentication,)    
    permission_classes = (IsAuthenticated,)     


def haversine(lat1, lng1, lat2, lng2):
    """
    Calculate the great circle distance between two points 
    on the earth (specified in decimal degrees)
    """
    # convert decimal degrees to radians 
    lng1, lat1, lng2, lat2 = map(radians, [lng1, lat1, lng2, lat2])

    # haversine formula 
    dlng = lng2 - lng1 
    dlat = lat2 - lat1 
    a = sin(dlat/2)**2 + cos(lat1) * cos(lat2) * sin(dlng/2)**2
    c = 2 * asin(sqrt(a)) 
    km = 6367 * c
    return km


def get(self, request, route_id):

    d_route = Route.objects.get(id=route_id)
    p_routes = Route.objects.all()

    for route in p_routes:
        x = haversine(d_route.origin_lat,d_route.origin_lng, route.origin_lat, route.origin_lng )
        if ( x < 3):
            new_route = 0
    return Response(new_route,status=status.HTTP_200_OK)
达米安·切尔诺诺夫斯基(Damian Chrzanowski)

线:

def haversine(lat1, lng1, lat2, lng2):

应该:

def haversine(self, lat1, lng1, lat2, lng2):

和线:

x = haversine(d_route.origin_lat,d_route.origin_lng, route.origin_lat, route.origin_lng )

应该:

x = self.haversine(d_route.origin_lat,d_route.origin_lng, route.origin_lat, route.origin_lng )

那是因为它们都存在于内部,Class所有函数都应该缩进到Class不知道它是否粘贴错误,或者实际上是否看起来像.py文件中的样子。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

为什么我得到一个未定义的?

为什么我要在另一个实例上调用私有方法?

为什么从javascript到另一个javascript有未定义的错误?

为什么我的<script>即使被调用也给我一个未定义的错误?

为什么ld在具有引用的函数中找到另一个函数中的未定义引用

未定义的变量:变量不会在另一个页面中传递

为什么我在React中的状态在一个函数中定义而在另一个函数中未定义?

当我的函数调用另一个函数时,未定义“ sqlContext”

如果我在fortran中调用一个函数而未定义变量,会发生什么?

为什么从另一个ActionResult方法中调用PartialView时不调用它?

当我尝试在属性块中将一个类属性分配给另一个类属性时,为什么MATLAB会引发“未定义的变量”错误?

为什么我不能从另一个类调用方法

未定义的方法-从另一个文件中调用一个文件中的类

当将我的Mongoose数据库架构的一个实例放置在另一个架构中时,为什么会“广播到未定义”?

从另一个控制器调用时,nil:NilClass的未定义方法“ each”

调用另一个控制器索引时,nil:NilClass的未定义方法“ each”

当从另一个上下文中调用方法时,“ this”是未定义的

我收到通知:将变量传递到另一个页面时未定义的索引

为什么我不能在另一个类中调用静态方法?

为什么我不能从 python 中的另一个函数调用一个函数。函数未定义错误

为什么我的变量在更改另一个变量的显示后变得未定义?

为什么对象属性在来自同一对象的另一个方法中未定义但在其他方法中未定义?

为什么 useState 钩子改变另一个对象而不调用它?

为什么我不能在 Child 类中创建另一个 Child 对象?(对“vtable”的未定义引用)

为什么 TypeScript 需要在回调中进行另一个未定义的检查?

为什么当我更新一个 useState 时它会更新另一个而不调用它(反应钩子)?

Vue/Vuetify:为什么我会收到一个 ReferenceError:变量未定义?

为什么我得到一个未定义的变量:laravel 中的请求

在另一个函数中异步调用后,我一直未定义