Проверка, чтобы видеть, был ли дополнительный метод протокола реализован

Первое, что вам нужно знать, это получить доступ к элементам в 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)

Этот код может быть реализован гораздо короче. Я расширяю его, чтобы уменьшить сложность. Надеюсь, вы это поняли.

54
задан Bobrovsky 14 October 2012 в 07:12
поделиться

1 ответ

respondsToSelector: часть NSObject протокол. Включая NSObject в MyProtocol должен решить Вашу проблему:

@protocol MyProtocol <NSObject>

@optional
-(void)optionalProtocolMethod:(id)anObject;

@end
100
ответ дан Will Harris 7 November 2019 в 07:57
поделиться