简体   繁体   English

类型错误:'float' object 不可下标。 按两个列表拆分坐标

[英]TypeError: 'float' object is not subscriptable. Split coordinates by two lists

I need to split the list with coordinates in latitude and longitude lists.我需要用纬度和经度列表中的坐标拆分列表。

coordinate =[[28.1944412,59.3611303],
         [28.1950085,59.3609766],
         [28.1950943,59.3611666],
         [28.1952418,59.3611556],
         [28.1951894,59.3609233],
         [28.1949748,59.3607484],
         [28.1932367,59.3601032],
         [28.1924642,59.3598571],
         [28.1909515,59.3595509],
         [28.1902434,59.3593814],
         [28.1902329,59.3593308],
         [28.1902322,59.3593196]]
         latitude=[]
         longtitude=[]
         for coodinates in coordinate:
             for coordinatere in coodinates:
                 longtitude.append(coordinatere[o])
                 latitude.append(coordinatere[i])
         print(latitude)

I receive this message.我收到这条消息。

TypeError: 'float' object is not subscriptable.类型错误:'float' object 不可下标。

How can I fix it?我该如何解决? Thanks for the help.谢谢您的帮助。

Single line list comprehension should do the job:单行列表理解应该可以完成这项工作:


longitudes = [i[0] for i in coordinate]
latitudes = [i[1] for i in coordinate]

Try this.尝试这个。

coordinate =[[28.1944412,59.3611303],[28.1950085,59.3609766],[28.1950943,59.3611666],[28.1952418,59.3611556],[28.1951894,59.3609233],[28.1949748,59.3607484],[28.1932367,59.3601032],[28.1924642,59.3598571],[28.1909515,59.3595509],[28.1902434,59.3593814],[28.1902329,59.3593308],[28.1902322,59.3593196]]
latitude=[]
longtitude=[]
for coodinates in coordinate:
    
    longtitude.append(coodinates[0])
    latitude.append(coodinates[1])
print(latitude)

you don't need the second for loop你不需要第二个 for 循环

for coodinates in coordinate:
     longtitude.append(coodinates[0])
     latitude.append(coodinates[1])

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM