У меня есть два списка, list1 и list2.
list1 = [wind_speed_0, wind_speed_1, wind_direction_0,
wind_direction_1]
list2 = [serial_num_0, serial_num_1]
Элементы в этих списках на самом деле являются именами переменных данных, которые принадлежат к набору данных xarray.
По существу, еслипоследние символы в списке list2 соответствуют последним символам в списке list1, затем я хочу взять соответствующий серийный номер для каждого элемента в списке list2 и добавить его к элементам в списке list1.
Например: «abc123» - это серийный номерномер, присвоенный serial_num_0, а «abc456» - это серийный номер, присвоенный serial_num_1.Итак, я хотел бы закончить со списком3, который будет выглядеть так:
list3 = [wind_speed_abc123, wind_speed_abc456,
wind_direction_abc123,wind_direction_abc456]
Есть ли простой способ сделать это, что у меня в голове?
Это то, что у меня естьпока:
# Collect all possible items for lists from xarray dataset object
want_variables = ['wind_speed_.*','wind_direction_.*']
serial_nums = ['serial_num_.*']
# Give me all of the data variables found in my xarray dataset
obj_variables = list(ds.data_vars)
# Use for loops to create list1 and list2
for var in want_variables:
r = re.compile(var)
list1 = list(filter(r.match, obj_variables))
for ii in serial_nums:
rr = re.compile(ii)
list2 = list(filter(rr.match, obj_variables))
Это приводит меня к списку 1 и списку 2, но я не уверен, куда идти дальше.