Reihenfolge einer Ausgabe (list) ändern

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
sapre
User
Beiträge: 1
Registriert: Sonntag 24. Januar 2016, 19:52

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.
mutetella
User
Beiträge: 1695
Registriert: Donnerstag 5. März 2009, 17:10
Kontaktdaten:

@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.
Entspanne dich und wisse, dass es Zeit für alles gibt. (YogiTea Teebeutel Weisheit ;-) )
BlackJack

Randbemerkung: Die `PlacesBrowserQuery.__init__()` macht keinen Sinn, da man das gleiche Ergebnis erhält wenn man die einfach weglassen würde.
Antworten