Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 21.06.2022
Сообщений: 17

Остановка цикла for

27.06.2022, 00:17. Показов 1385. Ответов 13

Студворк — интернет-сервис помощи студентам
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
from kivy.app import App
from kivy.uix.button import Button
from kivy.uix.label import Label
from kivy.uix.boxlayout import BoxLayout
 
 
 
class TestApp(App):
    def build(self):
        bl=BoxLayout(padding=20, orientation='vertical')
        a=['5*4=', '6*8=', '9*10=']
        a1=['15', '20', '17', '9', '20']
        a2=['14', '11', '48', '19', '48']
        a3=['90', '19', '57', '63', '90']
 
        for ex in a:
            self.lbl=Label(text=ex)
            bl.add_widget(self.lbl)
            if ex==a[0]:
                bl.add_widget(Button(text=a1[0]))
                bl.add_widget(Button(text=a1[1]))
                bl.add_widget(Button(text=a1[2]))
                bl.add_widget(Button(text=a1[3]))
            elif ex==a[1]:
                bl.add_widget(Button(text=a2[0]))
                bl.add_widget(Button(text=a2[1]))
                bl.add_widget(Button(text=a2[2]))
                bl.add_widget(Button(text=a2[3]))
            elif ex==a[2]:
                bl.add_widget(Button(text=a3[0]))
                bl.add_widget(Button(text=a3[1]))
                bl.add_widget(Button(text=a3[2]))
                bl.add_widget(Button(text=a3[3]))
        return bl
 
if __name__ == '__main__':
    TestApp().run()
в этом коде все вопросы выводятся одновременно, но мне нужно, чтобы они выводились по отдельности, можно это как-то сделать???
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
27.06.2022, 00:17
Ответы с готовыми решениями:

Остановка цикла без использования break
Доброго времени суток. Есть понимание, как работает оператор break, но есть догадка, что можно обходиться и без его использования. Как...

Остановка цикла
Приветствую. Есть три скрипта. Один исполняющий. При получении строки "1" включает скрипт LED_ON.py Исполняющий скрипт: import...

Остановка цикла
Здравствуйте, помогите пожалуйста понять задание и попробовать написать код: Разработать и отладить на эмуляторе индивидуальное задание: ...

13
171 / 111 / 65
Регистрация: 26.06.2020
Сообщений: 331
27.06.2022, 00:36
Цитата Сообщение от Valens1ya Посмотреть сообщение
мне нужно, чтобы они выводились по отдельности
Что должно быть сигналом для вывода следующего вопроса?
0
0 / 0 / 0
Регистрация: 21.06.2022
Сообщений: 17
27.06.2022, 00:38  [ТС]
Нажатие на кнопку, например, с текстом "Далее"
0
171 / 111 / 65
Регистрация: 26.06.2020
Сообщений: 331
27.06.2022, 00:40
Ну вот, сделай кнопку, обрабатывай нажатие.
0
0 / 0 / 0
Регистрация: 21.06.2022
Сообщений: 17
27.06.2022, 00:41  [ТС]
Так хоть делай кнопку, хоть нет, все вопросы выводятся разом, а я не знаю как приостановить цикл
0
171 / 111 / 65
Регистрация: 26.06.2020
Сообщений: 331
27.06.2022, 00:46
Цитата Сообщение от Valens1ya Посмотреть сообщение
Так хоть делай кнопку
Код с кнопкой выложи, я покажу как сделать вывод по одному вопросу(при нажатии на эту кнопку).
0
0 / 0 / 0
Регистрация: 21.06.2022
Сообщений: 17
27.06.2022, 00:50  [ТС]
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
from kivy.app import App
from kivy.uix.button import Button
from kivy.uix.label import Label
from kivy.uix.boxlayout import BoxLayout
 
 
 
class TestApp(App):
    def build(self):
        bl=BoxLayout(padding=20, orientation='vertical')
        a=['5*4=', '6*8=', '9*10=']
        a1=['15', '20', '17', '9', '20']
        a2=['14', '11', '48', '19', '48']
        a3=['90', '19', '57', '63', '90']
 
        for ex in a:
            self.lbl=Label(text=ex)
            bl.add_widget(self.lbl)
            if ex==a[0]:
                bl.add_widget(Button(text=a1[0]))
                bl.add_widget(Button(text=a1[1]))
                bl.add_widget(Button(text=a1[2]))
                bl.add_widget(Button(text=a1[3]))
                bl.add_widget(Button(text='Далее', on_press=self.npress))
            elif ex==a[1]:
                bl.add_widget(Button(text=a2[0]))
                bl.add_widget(Button(text=a2[1]))
                bl.add_widget(Button(text=a2[2]))
                bl.add_widget(Button(text=a2[3]))
            elif ex==a[2]:
                bl.add_widget(Button(text=a3[0]))
                bl.add_widget(Button(text=a3[1]))
                bl.add_widget(Button(text=a3[2]))
                bl.add_widget(Button(text=a3[3]))
        return bl
    def npress(self):
 
 
if __name__ == '__main__':
    TestApp().run()
0
171 / 111 / 65
Регистрация: 26.06.2020
Сообщений: 331
27.06.2022, 01:06
Рабочий код выложи (чтобы при нажатии на кнопку "Далее" не выскакивала ошибка).
0
0 / 0 / 0
Регистрация: 21.06.2022
Сообщений: 17
27.06.2022, 01:11  [ТС]
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
from kivy.app import App
from kivy.uix.button import Button
from kivy.uix.label import Label
from kivy.uix.boxlayout import BoxLayout
 
 
 
class TestApp(App):
    def build(self):
        bl=BoxLayout(padding=20, orientation='vertical')
        a=['5*4=', '6*8=', '9*10=']
        a1=['15', '20', '17', '9', '20']
        a2=['14', '11', '48', '19', '48']
        a3=['90', '19', '57', '63', '90']
 
        for ex in a:
            self.lbl=Label(text=ex)
            bl.add_widget(self.lbl)
            if ex==a[0]:
                bl.add_widget(Button(text=a1[0]))
                bl.add_widget(Button(text=a1[1]))
                bl.add_widget(Button(text=a1[2]))
                bl.add_widget(Button(text=a1[3]))
                bl.add_widget(Button(text='Далее', on_press=self.npress))
            elif ex==a[1]:
                bl.add_widget(Button(text=a2[0]))
                bl.add_widget(Button(text=a2[1]))
                bl.add_widget(Button(text=a2[2]))
                bl.add_widget(Button(text=a2[3]))
            elif ex==a[2]:
                bl.add_widget(Button(text=a3[0]))
                bl.add_widget(Button(text=a3[1]))
                bl.add_widget(Button(text=a3[2]))
                bl.add_widget(Button(text=a3[3]))
        return bl
    def npress(self, instance):
        pass
if __name__ == '__main__':
    TestApp().run()
0
171 / 111 / 65
Регистрация: 26.06.2020
Сообщений: 331
27.06.2022, 01:17
Новый вопрос должен присоединяться к предыдущему, или заменять его?
0
0 / 0 / 0
Регистрация: 21.06.2022
Сообщений: 17
27.06.2022, 01:17  [ТС]
Заменять
0
171 / 111 / 65
Регистрация: 26.06.2020
Сообщений: 331
27.06.2022, 02:20
Лучший ответ Сообщение было отмечено Valens1ya как решение

Решение

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
from kivy.uix.button import Button
from kivy.uix.label import Label
from kivy.uix.boxlayout import BoxLayout
 
 
 
class TestApp(App):
    def build(self):
        self.bl = BoxLayout(padding=20, orientation='vertical')
        
        self.listA = ['5*4=', '6*8=', '9*10=']
        self.listB = [['15', '20', '17', '9', '20'],
                ['14', '11', '48', '19', '48'],
                ['90', '19', '57', '63', '90']]
        
        self.i = 0
        self.lbl = Label(text=self.listA[self.i])
        self.bl.add_widget(self.lbl)
 
        self.button1 = Button(text=self.listB[self.i][0])
        self.button2 = Button(text=self.listB[self.i][1])
        self.button3 = Button(text=self.listB[self.i][2])
        self.button4 = Button(text=self.listB[self.i][3])
        self.button_next = Button(text='Далее', on_press=self.npress)
        self.bl.add_widget(self.button1)
        self.bl.add_widget(self.button2)
        self.bl.add_widget(self.button3)
        self.bl.add_widget(self.button4)
        self.bl.add_widget(self.button_next)
        self.i += 1
        
        return self.bl
 
    def npress(self, instanse):
            if self.i < len(self.listA):
                self.lbl.text = self.listA[self.i]
                self.button1.text=self.listB[self.i][0]
                self.button2.text=self.listB[self.i][1]
                self.button3.text=self.listB[self.i][2]
                self.button4.text=self.listB[self.i][3]
                self.i += 1
                if self.i == len(self.listA):
                   self.i = 0
    
 
if __name__ == '__main__':
    TestApp().run()
1
0 / 0 / 0
Регистрация: 21.06.2022
Сообщений: 17
27.06.2022, 02:24  [ТС]
спасибо огромное!
0
171 / 111 / 65
Регистрация: 26.06.2020
Сообщений: 331
27.06.2022, 06:02
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
from kivy.app import App
from kivy.uix.button import Button
from kivy.uix.label import Label
from kivy.uix.boxlayout import BoxLayout
 
 
 
class TestApp(App):
    def build(self):
        self.bl = BoxLayout(padding=20, orientation='vertical')
        
        self.listA = ['5*4=', '6*8=', '9*10=']
        self.listB = [['15', '20', '17', '9', '20'],
                ['14', '11', '48', '19', '48'],
                ['90', '19', '57', '63', '90']]
        
        self.i = 0
        self.lbl = Label(text=self.listA[self.i])
        self.bl.add_widget(self.lbl)
 
        self.list_buttons = []
        for j in range(len(self.listB[self.i]) - 1):
            self.list_buttons.append(Button(text=self.listB[self.i][j]))
            self.bl.add_widget(self.list_buttons[j])
        
        self.button_next = Button(text='Далее', on_press=self.npress)
        self.bl.add_widget(self.button_next)
        self.i += 1
        
        return self.bl
 
    def npress(self, instanse):
            if self.i < len(self.listA):
                self.lbl.text = self.listA[self.i]
                j = 0
                for b in self.list_buttons:
                    b.text=self.listB[self.i][j]
                    j += 1
                self.i += 1
                if self.i == len(self.listA):
                   self.i = 0
    
 
if __name__ == '__main__':
    TestApp().run()
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
27.06.2022, 06:02
Помогаю со студенческими работами здесь

Остановка цикла do while
Доброго времени суток. Столкнулся с такой проблемой в решении задачи: Дана числовая последовательность целых чисел и одно дробное, нужно...

Остановка цикла
Здравствуйте. Как в консольном приложении остановить цикл например на 3сек, но так, чтобы программа не остановилась.

Остановка цикла
Работаю на форме. Программа для имитации набора текста. При запуске основного цикла по набору текста форма виснет, и не отвечает до тех...

Остановка цикла do while
При вводе любого числа кроме 1; 2; 3; цикл должен повторяться, иначе останавливаться. #include &lt;iostream&gt; using namespace std;...

Остановка бесконечного цикла
При нажатии кнопки запускается бесконечный цикл, нужно чтобы он останавливался при повторном нажатии и запускался при следующем или сделать...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru