обратные числа в списке кортежей - PullRequest
0 голосов
/ 21 октября 2018

У меня есть некоторые данные координат, которые lng,lat, однако мне они нужны lat,lng

У меня есть их в списке кортежей, и мне нужно их переключить:

myList = [(-87.93897686650001, 41.8493707892),
 (-87.93893322819997, 41.8471652588),
 (-87.9292710931, 41.8474548975),
 (-87.91960917239999, 41.8477438951),
 (-87.91927828050001, 41.8404034535)]

Я пытался

newList = []
for i in range(len(myList)):
    for c, x in reversed(list(enumerate(myList[i]))):
        newList.append(x)

Я получаю следующий вывод, который близок

[41.8493707892,
 -87.93897686650001,
 41.8471652588,
 -87.93893322819997,
 41.8474548975,
 -87.9292710931,
 41.8477438951,
 -87.91960917239999,
 41.8404034535,
 -87.91927828050001]

Но я ищу

[(41.8493707892, -87.93897686650001),
     (41.8471652588, -87.93893322819997),
     (41.8474548975, -87.9292710931),
     (41.8477438951, -87.91960917239999),
     (41.8404034535, -87.91927828050001)]

в идеале я хотел бы сделатьвсе это во вложенном цикле for;но мне все равно, нужно ли мне что-то делать с newList для группировки пар.

Как всегда, любая помощь приветствуется.

Ответы [ 2 ]

0 голосов
/ 21 октября 2018

Вы можете сделать это очень легко с пониманием списка.

[(b,a) for a,b in myList]
0 голосов
/ 21 октября 2018

Если вы действительно не привязаны к вложенному циклу for, вероятно, проще всего использовать этот вид понимания списка:

newlist=[i[::-1] for i in myList]

>>> newlist
[(41.8493707892, -87.93897686650001), (41.8471652588, -87.93893322819997), (41.8474548975, -87.9292710931), (41.8477438951, -87.91960917239999), (41.8404034535, -87.91927828050001)]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...