猿问

尝试在 for 循环中设置列表的每个部分

 info = [[30.22,-81.88,VFR],[27.18,-80.22,VFR], [35.35,-89.87,MVFR]]

这是我的列表的一小部分,里面有列表。这是我的常规列表“信息”中 4700 个列表的较长列表的一小段

我基本上需要获取每个列表中的每个值并将它们放入变量中,例如: info[1][30.22,-81.88,VFR]并且我需要设置lat[i] = 30.22, long[I] = -81.11, cat[I] = VFR

然后我将在 OpenStreetMap 上映射这些坐标等等。

所以我的问题是如何获取每个列表并取出每个列表的每个值?

我最好的猜测是 for 循环内有一个 for 循环?


当年话下
浏览 85回答 1
1回答

牧羊人nacy

将每个元素转换为元组,然后将元组拆分为变量或将每个内部元素附加到列表中。分割元组:info = [[30.22,-81.88,'VFR'],[27.18,-80.22,'VFR'], [35.35,-89.87,'MVFR']]lat = [None] * len(info)long = [None] * len(info)cat = [None] * len(info)for i,e in enumerate(info):   lat[i], long[i], cat[i] = tuple(e)print(lat)print(long)print(cat)附加内部元素:info = [[30.22,-81.88,'VFR'],[27.18,-80.22,'VFR'], [35.35,-89.87,'MVFR']]lat = []long = []cat = []for e in info:   lat.append(e[0])   long.append(e[1])   cat.append(e[2])   print(lat)print(long)print(cat)列表理解也是一种选择:info = [[30.22,-81.88,'VFR'],[27.18,-80.22,'VFR'], [35.35,-89.87,'MVFR']]lat =  [e[0] for e in info]long = [e[1] for e in info]cat =  [e[2] for e in info]   print(lat)print(long)print(cat)全部都有相同的结果:[30.22, 27.18, 35.35][-81.88, -80.22, -89.87]['VFR', 'VFR', 'MVFR']
随时随地看视频慕课网APP

相关分类

Python
我要回答