字符串或 unicode 输入无法识别为 WKT EWKT 和 HEXEWKB

发布于 2024-10-13 03:05:36 字数 618 浏览 9 评论 0原文

这可能是一个简单的问题,但我似乎没有弄清楚。我正在使用 GeoDjango,并且我将纬度和经度转换为字符串(请参阅 my_lat 和 my_long)。

由于某种原因,当我在 fromstr('POINT(my_long_lat)') 中使用 my_long_lat 变量时,它不喜欢它,并且收到此错误:

字符串或 unicode 输入无法识别 如 WKT EWKT 和 HEXEWKB

我的代码:

my_lat = str(lat)[1:10]
my_long = str(long)[21:31]
my_long_lat = my_long + " " + my_lat
mypoint = fromstr('POINT(my_long_lat)')

只是为了确保变量 my_lat 和 my_long 具有正确的数据,我打印了它们,它们显示了这些值:my_lat 为 30.751277,my_long 为 -101.25。

如果我只是输入这样的值: mypoint = fromstr('点(-101.25 30.751277)') 没有生成错误,但显然我需要使用变量来传递数据。

有什么想法吗?谢谢你!

It might be a easy problem but I don't seem to figure it out. I'm using GeoDjango and I have a latitude and a longitude that I converted into strings (see my_lat and my_long).

For some reason it doesn't like the my_long_lat variable when I use it inside the fromstr('POINT(my_long_lat)') and I get this error:

String or unicode input unrecognized
as WKT EWKT, and HEXEWKB

My code:

my_lat = str(lat)[1:10]
my_long = str(long)[21:31]
my_long_lat = my_long + " " + my_lat
mypoint = fromstr('POINT(my_long_lat)')

Just to make sure the variables my_lat and my_long have the right data I printed them and they show these values: 30.751277 for my_lat and -101.25 for my_long.

If I just type the values like this:
mypoint = fromstr('POINT(-101.25 30.751277)')
there are no errors generated but evidently I need to use variables to pass the data in.

Any ideas? Thank you!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

勿挽旧人 2024-10-20 03:05:36

这行按字面解释:

fromstr('POINT(my_long_lat)')

尝试

fromstr('POINT(' + my_long_lat + ')')

This line is being interpreted literally:

fromstr('POINT(my_long_lat)')

Try

fromstr('POINT(' + my_long_lat + ')')
女皇必胜 2024-10-20 03:05:36

试试这个,这对我有用:

def create_point_from_lat_long(latitude, longitude):
    """
    Create a Point object from latitude and longitude.
    """
    # Ensure latitude and longitude are floats
    latitude = float(latitude)
    longitude = float(longitude)
    # Create and return the Point object
    return Point(longitude, latitude)

try this it's work for me:

def create_point_from_lat_long(latitude, longitude):
    """
    Create a Point object from latitude and longitude.
    """
    # Ensure latitude and longitude are floats
    latitude = float(latitude)
    longitude = float(longitude)
    # Create and return the Point object
    return Point(longitude, latitude)
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文