Первое, что вам нужно знать, это получить доступ к элементам в 2D-списке. Согласно вашему list1
, город находится в 0-й позиции, а температура - в 1-й позиции подряд. Внутри простого цикла вы можете получить доступ к ним следующим образом. Не забудьте сохранить отступ, чтобы указать тело цикла for.
for element in list1:
city = element[0]
temp_c = element[1]
Затем вы можете напрямую использовать temp_c
для вычисления температуры в градусах Фаренгейта (temp_f
), внутри цикла.
temp_f = (9 / 5) * temp_c + 32
Следующая задача - добавить вычисленные значения temp_f
в новый список (list2
) вместе с названием города.
list2.append((city, temp_f))
Но перед этим вы должны определить list2
. (где-то рядом вы определяете list1
)
list2 =[]
Итак, все готово. Вы можете проверить это, используя оператор print.
for element in list2:
print(element)
Этот код может быть реализован гораздо короче. Я расширяю его, чтобы уменьшить сложность. Надеюсь, вы это поняли.
respondsToSelector:
часть NSObject
протокол. Включая NSObject
в MyProtocol
должен решить Вашу проблему:
@protocol MyProtocol <NSObject>
@optional
-(void)optionalProtocolMethod:(id)anObject;
@end