@Sebastian1993
You have chosen to use a QListWidget:
QListWidget is a convenience class that provides a list view similar to the one supplied by QListView, but with a classic item-based interface for adding and removing items. QListWidget uses an internal model to manage each QListWidgetItem in the list.
For a more flexible list view widget, use the QListView class with a standard model.
It has its own internal model, and you have to use that. This approach will require copying data between its model and a representation you might make in your own code, where as @Denni-0 says you may prefer to do your list manipulation.
If you used a QListView you could set its model to, say, a QStringListModel. That is within the Qt domain. Or, you could supply a custom model and behaviour in Python code.