Помогите с циклом и массивом

Ильяс

Новичок
Пользователь
Окт 10, 2020
4
0
1
Когда я запускаю этот цикл, то всё работает нормально
a=[12,15,13,18,'a','v','b']
for i in range (len(a)):
while i<=5:
print (a)
i+=1

Программа печатает - 12,15,13,18, a,v, затем 15,13,18,a,v, затем 13, 18, a,v, и т.д. до v

Но когда я запускаю цикл ниже


b=[70,40,30,20,55,"A","B","D","M"]
i=6
for i in range (len(b)):
while i>=0:
print (b)
i=i-1

Программа печатает - B,A,55,20,30,40,70 затем снова B,A,55,20,30,40,70 и так семь раз, почему он не уменьшает количество элементов? Где тут ошибка?




Кстати тут почему-то не сохраняется в квадратных скобках i в print(b)
 
Последнее редактирование:

lynulx

Модератор
Команда форума
Модератор
Авг 9, 2020
139
19
18
не совсем понятно, что вам нужно, обе программы будут выводить полный массив какое-то количество раз

1) насчет i, в цикле for в каждой итерации вы даете ей новое значение, так что в данном случае изменение i ничего не делает
2) если вам нужно сделать так, чтобы в каждой итерации выводился список как вы описали в первом случае, попробуйте срезы
 

Ильяс

Новичок
Пользователь
Окт 10, 2020
4
0
1
не совсем понятно, что вам нужно, обе программы будут выводить полный массив какое-то количество раз

1) насчет i, в цикле for в каждой итерации вы даете ей новое значение, так что в данном случае изменение i ничего не делает
2) если вам нужно сделать так, чтобы в каждой итерации выводился список как вы описали в первом случае, попробуйте срезы

Первая программа печатает с уменьшением элементов как описал выше, а вторая не уменьшает элементы
 

Ильяс

Новичок
Пользователь
Окт 10, 2020
4
0
1
Мне нужно, чтобы программа выдавала так:

B,A,55,20,30,40,70
Затем
А,55,20,30,40,70
Затем,
55,20,30,40,70
Затем
20,30,40,70
Затем
30,40,70
Затем
40,70
Затем
70
 

lynulx

Модератор
Команда форума
Модератор
Авг 9, 2020
139
19
18
Мне нужно, чтобы программа выдавала так:

B,A,55,20,30,40,70
Затем
А,55,20,30,40,70
Затем,
55,20,30,40,70
Затем
20,30,40,70
Затем
30,40,70
Затем
40,70
Затем
70
если нужно, чтобы сам список не изменялся - срезы

если нужно изменять список - удаление первого элемента
 

Ильяс

Новичок
Пользователь
Окт 10, 2020
4
0
1
если нужно, чтобы сам список не изменялся - срезы

если нужно изменять список - удаление первого элемента
Извините, но я не знаю что такое срезы. Я только учусь, совсем начальный этап.
Можете показать правильный полный код второй программы?
Спасибо
 

lynulx

Модератор
Команда форума
Модератор
Авг 9, 2020
139
19
18
Извините, но я не знаю что такое срезы. Я только учусь, совсем начальный этап.
Можете показать правильный полный код второй программы?
Спасибо
 

stud_55

Модератор
Команда форума
Модератор
Апр 3, 2020
1 522
672
113
Кстати тут почему-то не сохраняется в квадратных скобках i в print(b)
Код вставляйте с помощью ... -> код -> Python.
 

Форум IT Специалистов