Как добавить данные в QListWidget из словаря

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

Пока что существует всего одна заметка - 'Добро пожаловать' в словаре notes.
Я хотел добавить ее название в листвиджет с помощью метода addItems(), но не понимаю, что нужно указать в скобках.
Если указать notes.get('zametka1'), то в лист виджет добавятся все ключи словаря являющегося значением 'zametka1'.

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

from PyQt5.QtWidgets import QApplication 
from PyQt5.QtCore import Qt
from PyQt5.QtWidgets import *
import sys
import json

class MainWindow(QWidget):
    def __init__(self):
        super().__init__()

        notes = {'zametka1': {'текст': ['Это самое лучшее приложение для заметок в мире!'], 'теги': ['добро', 'инструкция'], 'название': ['Добро пожаловать!']}}

        self.setWindowTitle('Умные заметки')

        self.add_zametka = QPushButton('Создать заметку', self)
        self.delete_zametka = QPushButton('Удалить заметку', self)            
        self.save_zametka = QPushButton('Сохранить заметку', self)
        self.dobavit_K_zametke = QPushButton('Добавить к заметке', self)
        self.otkrepit = QPushButton('Открепить от заметки', self)            
        self.iskat_zametki_po_tagu = QPushButton('Искать заметки по тегу', self)

        self.add_zametka.setGeometry(500, 275, 155, 40)
        self.delete_zametka.setGeometry(720, 275, 155, 40)
        self.save_zametka.setGeometry(499, 330, 380, 40)
        self.dobavit_K_zametke.setGeometry(500, 770, 155, 40)
        self.otkrepit.setGeometry(720, 770, 155, 40)
        self.iskat_zametki_po_tagu.setGeometry(499, 830, 380, 40)

        self.resize(900, 900)                       
        
        self.textbox = QTextEdit(self)
        self.textbox.setGeometry(20, 20, 450, 865)



        self.list_zametok1 = QListWidget(self)
        self.list_zametok1.setGeometry(500, 45, 375, 200)
        #self.list_zametok1.addItems()
        self.list_tag2 = QListWidget(self)
        self.list_tag2.setGeometry(500, 435 , 375, 250)
  
        self.vvedite_tag = QLineEdit(self)
        self.vvedite_tag.setGeometry(500, 725, 375, 25)
        self.vvedite_tag.setPlaceholderText('Введите тег...')

        self.nadpis_1 = QLabel('Список заметок', self)
        self.nadpis_1.setGeometry(500, 10, 155, 40)
        self.nadpis_2 = QLabel('Список тегов', self)
        self.nadpis_2.setGeometry(500, 400, 155, 40)
        #self.list_tag2.addItems()

        
if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = MainWindow()
    ex.show()
    sys.exit(app.exec_())

Ответы (1 шт):

Автор решения: S. Nick

Я добавил для вас метод func_add_zametka(), в котором реализовано задуманное вами. Нажмите на кнопку 'Создать заметку'.

import sys
from PyQt5.QtWidgets import *


class MainWindow(QWidget):
    def __init__(self):
        super().__init__()

        self.notes = {
            'zametka1': {
                'текст': ['Это самое лучшее приложение для заметок в мире!'], 
                'теги': ['добро', 'инструкция'], 
                'название': ['Добро пожаловать!']
            }
        }
        self.setWindowTitle('Умные заметки')
        
        self.layout = QGridLayout(self)                                   # +++

        self.add_zametka = QPushButton('Создать заметку', self)
        self.add_zametka.clicked.connect(self.func_add_zametka)           # !!! +++
        self.layout.addWidget(self.add_zametka, 3, 3, 1, 1)               # +++
        
        self.delete_zametka = QPushButton('Удалить заметку', self)
        self.layout.addWidget(self.delete_zametka, 3, 4, 1, 1)
        self.save_zametka = QPushButton('Сохранить заметку', self)
        self.layout.addWidget(self.save_zametka, 4, 3, 1, 2)
        
        self.dobavit_K_zametke = QPushButton('Добавить к заметке', self)
        self.layout.addWidget(self.dobavit_K_zametke, 8, 3, 1, 1)
        self.otkrepit = QPushButton('Открепить от заметки', self)
        self.layout.addWidget(self.otkrepit, 8, 4, 1, 1)        
        self.iskat_zametki_po_tagu = QPushButton('Искать заметки по тегу', self)
        self.layout.addWidget(self.iskat_zametki_po_tagu, 9, 3, 1, 2) 
       
        self.textbox = QTextEdit(self)
        self.layout.addWidget(self.textbox, 1, 1, 9, 2)

        self.list_zametok1 = QListWidget(self)
        self.layout.addWidget(self.list_zametok1, 2, 3, 1, 2)
        
        self.list_tag2 = QListWidget(self)
        self.layout.addWidget(self.list_tag2, 6, 3, 1, 2)
  
        self.vvedite_tag = QLineEdit(self)
        self.vvedite_tag.setPlaceholderText('Введите тег...')
        self.layout.addWidget(self.vvedite_tag, 7, 3, 1, 2)

        self.nadpis_1 = QLabel('Список заметок', self)
        self.layout.addWidget(self.nadpis_1, 1, 3, 1, 2)
        
        self.nadpis_2 = QLabel('Список тегов', self)
        self.layout.addWidget(self.nadpis_2, 5, 3, 1, 2)

# +++ vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv        
    def func_add_zametka(self):
        zametka1 = self.notes.get('zametka1')
        if zametka1 is None:
            return
            
        name = zametka1.get('название')
        self.list_zametok1.addItems(name)
# +++ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

     
if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = MainWindow()
    ex.resize(900, 600)  
    ex.show()
    sys.exit(app.exec_())

введите сюда описание изображения

→ Ссылка