Для циклов и списков, новичок в python и программировании

list = [3,4,5,6]
a = 4
for x in list:
    if x <= 4:
        a += x
print (a)

# может кто-нибудь объяснить, какие шаги и как я получил ответ 11, когда я печатаю?

4 + 3 + 4 = 11
PM 77-1 05.05.2022 18:43

Что вы ожидаете от a?

Axe319 05.05.2022 18:43
a начинается как 4. Затем вы добавляете каждое целое число в вашем списке, которое меньше или равно 4, к a. Итак, 4 + 3 + 4 == 11
Paul M. 05.05.2022 18:44
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
3
3
38
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Если вы используете VSCode или Pycharm, у вас есть опция Отлаживать, чтобы понять, что происходит на каждом этапе. Давайте отладим это:

a = 4

  • первая петля:

    x = 3 и добавляется к переменной a, которая была 4, так что a = 4 + 3 и теперь a = 7

  • вторая петля:

    x = 4 и равно 4, так что добавляем в a переменную, которая была 7, значит a = 7 + 4 и теперь a = 11

  • третья и четвертая петли:

    x = 5 и x = 6 и они меньше 4, поэтому ничего не происходит.


и наконец a is 11

Я использую PyCharm, где находится вариант дебюта?

naimz 06.05.2022 11:33
list = [3,4,5,6]
a = 4
for x in list:  

Первая итерация, где x=3

if x<=4 === if 3<=4:  
condition True, if block is executed value a will   
a+=x ==== a=a+x
a=4+3 === a=7

Вторая итерация, где x=4

if x<=4 === if 4<=4:  
condition True , if block is executed value a will  
a+=x ==== a=a+x
a=7+4 === a=11  

Третья итерация, где x=5

if x<=4 === if 5<=4:
condition False  

Четвертая итерация, где x=6

if x<=6 === if 6<=4:  
condition False  

В списке больше нет значений, поэтому цикл for завершится

print (a)  
O/P --- 11

спасибо большое, все понятно и доступно объяснили

naimz 06.05.2022 11:29

Другие вопросы по теме