Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > Python
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.03.2019, 11:25   #1
pigeon890
Пользователь
 
Регистрация: 24.01.2019
Сообщений: 19
Вопрос Need little help on PyQt5 Помогите с PqQt5

Hi folks. Project's growing, troubles're growing. I have this function.
Код:
    def change_of_subj (self):
        sender = self.sender ()
        subj_name = sender.text()
        for item in os.listdir(r'C:\Program Files (x86)\LibHelper\Books\Alphabet\Book_Names\\' + subj_name [0]):
            if subj_name in item == True and out_list.findItems(item, Qt.MatchExactly) == '':
                self.out_list.addItem (item)
            elif subj_name in item == False:
                self.out_list.addItem ('По вашему запросу учебников не найдено')
            else:
                self.out_list.addItem ('По вашему запросу учебников не найдено')
It supposed to be called by textEdited event.
Код:
self.line_edit_book_subj.textEdited.connect(self.change_of_subj)
As you see, I change test in line_edit_book_subj, and as it changes it iterates through C:\Program Files (x86)\LibHelper\Books\Alphabet\Book _Names\\' + subj_name [0] in search of match of piece of book name and book names in directory.
There is no book files there at the moment, so it should write on QListWidget 'По вашему запросу учебников не найдено', but it does not. What am I doing wrong?


Сяп, форум, есть одна функция
Код:
    def change_of_subj (self):
        sender = self.sender ()
        subj_name = sender.text()
        for item in os.listdir(r'C:\Program Files (x86)\LibHelper\Books\Alphabet\Book_Names\\' + subj_name [0]):
            if subj_name in item == True and out_list.findItems(item, Qt.MatchExactly) == '':
                self.out_list.addItem (item)
            elif subj_name in item == False:
                self.out_list.addItem ('По вашему запросу учебников не найдено')
            else:
                self.out_list.addItem ('По вашему запросу учебников не найдено')
Должна вызываться textEdited событием
Код:
self.line_edit_book_subj.textEdited.connect(self.change_of_subj)
Функция должна либо итерируясь по каталогу C:\Program Files (x86)\LibHelper\Books\Alphabet\Book _Names\\' + subj_name [0] найти совпадения куска имени в QLineEdit с именами файлов в директории, в противном случае вывести в QListWidget 'По вашему запросу учебников не найдено'.
В директории ФАЙЛОВ НЕТ, поэтому она должна все время должна это выводить, но не выводит. Что не так?
Вялые питоны: лень, смекалка, пофигизм!
pigeon890 вне форума Ответить с цитированием
Старый 14.03.2019, 11:34   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Add more debug output http://blog.algoprog.ru/how-to-debug-small-programs/
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 14.03.2019, 11:41   #3
pigeon890
Пользователь
 
Регистрация: 24.01.2019
Сообщений: 19
По умолчанию

It does not execute a thing after for
Вялые питоны: лень, смекалка, пофигизм!
pigeon890 вне форума Ответить с цитированием
Старый 14.03.2019, 12:06   #4
pigeon890
Пользователь
 
Регистрация: 24.01.2019
Сообщений: 19
По умолчанию

So, it acts kinda strange: it does not report any failures and exceptions, but as I start changing text in QLineEdit, it does only set text from it as subj_name and nothing else. I am really uncomprehending.
Вялые питоны: лень, смекалка, пофигизм!
pigeon890 вне форума Ответить с цитированием
Старый 14.03.2019, 14:34   #5
pigeon890
Пользователь
 
Регистрация: 24.01.2019
Сообщений: 19
По умолчанию

Come on, guys, debug gave me no idea. Something should be wrong, but it's not clear for me what exactly
Вялые питоны: лень, смекалка, пофигизм!
pigeon890 вне форума Ответить с цитированием
Старый 14.03.2019, 15:25   #6
Black Fregat
Программист
Участник клуба
 
Аватар для Black Fregat
 
Регистрация: 23.06.2009
Сообщений: 1,772
По умолчанию

Цитата:
Сообщение от pigeon890 Посмотреть сообщение
поэтому она должна все время должна это выводить, но не выводит.
И какого рожна она должна что-то выводить?
Ни одного файла => ни одной итерации цикла.
Все сообщения только в цикле
Black Fregat вне форума Ответить с цитированием
Старый 15.03.2019, 09:59   #7
pigeon890
Пользователь
 
Регистрация: 24.01.2019
Сообщений: 19
По умолчанию

Благодарю, вы открыли мне глаза.
Вялые питоны: лень, смекалка, пофигизм!
pigeon890 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Подпись LineEdit на Python PyQt5 pigeon890 Python 4 28.01.2019 16:27
Не ставится PyQt5 All_iN_1 Python 1 18.01.2018 10:53
PyQt5 Не могу обработать кнопки. Глеб Иванов Python 0 31.10.2017 19:17
Помогите с виджетом из PyQt5 для открытия и редактирования изображения kadyrkaragishiev Python 0 25.03.2017 09:15
Python 3 + PyQt5 + PyOpenGL = blackscreen Glaciuse Python 0 10.04.2014 13:06