Seite 1 von 1

Reihenfolge einer Ausgabe (list) ändern

Verfasst: Sonntag 24. Januar 2016, 19:59
von sapre
Hallo,

ich bin ein absoluter Python-Neuling und beschäftige mich eigentlich erstmal nur damit, weil über Python-Skripte auf einem Display Texte ausgegeben werden, deren Reihenfolge ich verändern möchte.

Habe schon die verantwortlichen Stellen identifiziert, komme aber nicht weiter, da bei jeder kleinsten Änderungen, die ich vornehme, das ganze Skript abstürzt. Vielleicht erkennt jemand von euch etwas, was mir helfen könnte? Versuche schon seit Wochen durch Rumprobieren und Tutorials das zu lösen.

2 Dateien die miteinander verknüpft sind:

Relervanter Auszug aus Datei 1

Code: Alles auswählen

def make_audio_effect_browser_model(browser):
    audio_effects = TagBrowserQuery(include=['Audio Effects'], root_name='audio_effects')
    max = TagBrowserQuery(include=[['Max for Live', 'Max Audio Effect']], subfolder='Max for Live', root_name='max_for_live')
    plugins = make_plugins_query()
 places = PlacesBrowserQuery(subfolder=PLACES_LABEL)
    return QueryingBrowserModel(browser=browser, queries=[places,
     audio_effects,
     max])
Relevanter Auszug aus Datei 2, BrowserQuery.py

Code: Alles auswählen

class PlacesBrowserQuery(BrowserQuery):
    """
    Query that fetches all places of the browser
    """

    def __init__(self, *a, **k):
        super(PlacesBrowserQuery, self).__init__(*a, **k)

    def query(self, browser):
    return [browser.packs, browser.user_library] + list(browser.legacy_libraries) + [browser.current_project] + list(browser.user_folders)

Es geht darum, die Ausgabe " list(browser.user_folders)" an den Anfang, also vor " [browser.packs, browser.user_library] usw..." zu setzen. Doch wenn ich die Reihenfolge verändere, stürzt alles ab.

Würde mich über Hilfe wirklich sehr freuen. Sorry, wenn ich es nicht besser erklären kann.

Re: Reihenfolge einer Ausgabe (list) ändern

Verfasst: Sonntag 24. Januar 2016, 20:26
von mutetella
@sapre
Ohne die Zusammenhänge zu kennen, kann man da kaum etwas zu sagen. Der Rückgabewert von `query()` wird ja an anderer Stelle weiter verarbeitet. Und dort wird natürlich die Reihenfolge erwartet, und keine andere. Wenn Du also die Reihenfolge veränderst, dann musst Du an den Stellen, an denen diese Liste weiter verwendet wird, diese Änderung ebenfalls berücksichtigen.

Re: Reihenfolge einer Ausgabe (list) ändern

Verfasst: Sonntag 24. Januar 2016, 20:54
von BlackJack
Randbemerkung: Die `PlacesBrowserQuery.__init__()` macht keinen Sinn, da man das gleiche Ergebnis erhält wenn man die einfach weglassen würde.