Как использовать для цикла в списке в Python 3?

"Cannot read property 'Titre' of null" означает, что объект, который содержит Titre, равен null

=> conts должен быть пустым.

Вы можете добавить дополнительную проверку существования conts в тот же v-if или обернуть его.

Вариант 1:

<h3 v-if="conts && conts.Titre">{{ conts.Titre }}</h3>

Вариант 2:

<template v-if="conts">
    <h3 v-if="conts.Titre">{{ conts.Titre }}</h3>
</template>
0
задан Cro Simpson2.0 19 January 2019 в 17:09
поделиться

2 ответа

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

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

0
ответ дан thilina chathuranga 19 January 2019 в 17:09
поделиться

Используйте понимание списка:

list1 = [("Berlin", 22), ("Zagreb", 30), ("New York", 25), ("Chicago", 20), ("Paris", 29)]

list2 = [(city, 9/5 * temp + 32) for city, temp in list1]

print(list2)
# [('Berlin', 71.599999999999994), ('Zagreb', 86.0), ('New York', 77.0), ('Chicago', 68.0), ('Paris', 84.200000000000003)]

Здесь вы перебираете список кортежей, получая названия городов в city и температуру в градусах Цельсия в temp, и конвертируете градусы Цельсия в Фаренгейт.

Без понимания списка:

list2 = []

for city, temp in list1:
    list2.append((city, 9/5 * temp + 32))

print(list2)
# [('Berlin', 71.599999999999994), ('Zagreb', 86.0), ('New York', 77.0), ('Chicago', 68.0), ('Paris', 84.200000000000003)]
0
ответ дан Austin 19 January 2019 в 17:09
поделиться
Другие вопросы по тегам:

Похожие вопросы: