Цикл while оценивает условие и выполняет код в своем блоке, когда условие оценивается как True
, в противном случае он выходит из цикла. Условие True
заставляет цикл продолжаться бесконечно, поскольку он может только когда-либо принимать значение True, в то время как False
заставляет цикл немедленно завершать работу без выполнения кода в своем блоке.
Я знаю, что это только пример того, как использовать цикл while, однако, если бы это был реальный вариант использования, вы бы хотели вместо этого использовать цикл for.
given_list2 = [5, 4, 4, 3, 1, -2, -3, -5]
total3 = 0
for n in given_list2:
if n > 0:
total3 += n
else:
break
print(total3)
или даже
total3 = sum(n for n in given_list2 if n > 0)
@Tomalak в комментариях:
, так как идентификационным селекторам должен предшествовать хеш #, не должно быть никакой неоднозначности здесь
, “#id.class” является допустимым селектором, который требует, чтобы и идентификатор и отдельный класс соответствовали; это допустимо и не всегда полностью избыточно.
корректный способ выбрать литерал †. ’ в CSS должен выйти из него: “#id\.moreid”. Это раньше доставляло неприятности в некоторых более старых браузерах (в особенности IE5.x), но все современные настольные браузеры поддерживают его.
тот же метод, действительно кажется, работает в jQuery 1.3.2, хотя я не протестировал его полностью; quickExpr не берет его, но более включенный селекторный синтаксический анализатор, кажется, разбирается в нем:
$('#SearchBag\\.CompanyName');
Один вариант был бы этим:
$("input[id='SearchBag.CompanyName']")