python - 从变量字符串中提取坐标

ava*_*tar 6 python

我有一个像这样的字符串的纬度和经度:

my_string ='(31.251, -98.877)'
Run Code Online (Sandbox Code Playgroud)

我想用Python从上面的字符串中提取坐标.

问题是,有时字符串具有可变长度,所以有一次它可能看起来像这样(31.25134, -98.877)(31.25134, -98.877435).

因此,如果我做了类似于my_string[9:15]提取最后一个数字(经度)的东西,如果第一个数字(纬度)更长,我也捕获')'并且这不好.

知道如何从该字符串中正确提取这些坐标吗?谢谢!

Ign*_*ams 12

>>> ast.literal_eval('(31.251, -98.877)')
(31.251, -98.877)
Run Code Online (Sandbox Code Playgroud)

  • +1用于利用数据已经采用Python可以解析的格式这一事实.我想这会比其他一些解决方案慢,但很难打败它的优雅...... (3认同)

g.d*_*d.c 9

这个怎么样:

mystr = '(31.251, -98.877)'

lat, lng = map(float, mystr.strip('()').split(','))
Run Code Online (Sandbox Code Playgroud)

应该在不考虑值的长度的情况下工作.