【问题标题】:How to send output from a loop to a python list?如何将循环的输出发送到 python 列表?
【发布时间】:2018-10-29 18:48:56
【问题描述】:

我有这个代码

from opensky_api import OpenSkyApi

api = OpenSkyApi()
states = api.get_states(bbox=(51.3500, 51.5900, -0.6342, -0.2742))

for s in states.states:
    lat = s.latitude
    print(lat)

输出看起来像这样

51.4775
51.4589
51.4774
51.4774

如何使输出看起来像这样?

[51.4775, 51.4589, 51.4774, 51.4774]

【问题讨论】:

标签: python python-3.x list


【解决方案1】:
lats = [s.latitude for s in states.states]
print(lats)

【讨论】:

    【解决方案2】:

    试试这个:

    from opensky_api import OpenSkyApi
    
    api = OpenSkyApi()
    states = api.get_states(bbox=(51.3500, 51.5900, -0.6342, -0.2742))
    
    arr = []
    for s in states.states:
        arr.append(s.latitude)
    
    print(arr)
    

    【讨论】:

      【解决方案3】:

      这是一个函数式方法:

      from operator import attrgetter
      
      res = list(map(attrgetter('latitude'), states.states))
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-02-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-07-31
        • 1970-01-01
        • 2018-03-07
        • 1970-01-01
        相关资源
        最近更新 更多