在Python中如何从有时缺少数据的列表中分配变量

问题描述 投票:0回答:1

我的代码从 NOAA 的浮标服务读取数据。该网址采用 .txt 格式,然后我的代码使用该格式根据变量在列表中的位置分配变量。通常,我分配变量“lines”的列表将包含以下信息:

['Station CAMM2', "38° 34.4' N  76° 4.1' W", '', '3:00 pm EDT', '1900 GMT 05/22/24', 'Wind: SSW (210°), 9.9 kt', 'Gust: 15.0 kt', 'Pres: 29.96 falling', 'Air Temp: 82.8 °F', 'Water Temp: 68.5 °F', '']

我想这样分配变量:

when = lines[3]
wind = lines[5]
gust = lines[6]
pressure = lines[7]
air_temp = lines[8]
water_temp = lines[9]

但是,有时文本源中会缺少一个或多个这些元素。例如,提要中将缺少

air_temp
,因此
water_temp = lines[9]
将导致索引外错误。我知道这是基本的,但是如何从并不总是具有相同数量元素的列表中分配变量?

python list
1个回答
0
投票

循环列表并根据元素的内容分配给正确的变量:

when = lines[3]
for item in lines:
    if item.startswith('Wind:'):
        wind = item
    elif item.startswith('Gust:'):
        gust = item
    # and so on
© www.soinside.com 2019 - 2024. All rights reserved.