Elemente aus Liste

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
PythonAmateur
User
Beiträge: 2
Registriert: Samstag 14. November 2015, 14:27

Hallo zusammen,

für ein Projekt soll ich verschiedene Aufgaben in Python lösen, dies klappte bisher ganz gut, doch nun hänge ich an einer wahrscheinlich sehr einfach Aufgabe, vielleicht könnt ihr mir helfen.

Mir ist eine Datei gegen in der eine Liste enthalten ist.
Ich soll die Elemente der Liste erst sortieren und dann anschließen einzeln ausgeben.
Irgendwie stelle ich mich dabei zu blöd an.

Schon mal danke für die Hilfe
Viele Grüße :D
BlackJack

@PythonAmateur: Wo liegt denn das konkrete Problem? Beim Lesen der Datei? → ``with``-Anweisung, `open()`, eventuell `list()`. Beim Sortieren? → `sort()`-Methode auf Listen-Objekten oder die `sorted()`-Funktion. Beim Ausgeben? → ``for``-Schleife und je nach Python-Version die ``print``-Anweisung oder die `print()`-Funktion. Das sind für den Kern der Aufgabe drei bis vier Zeilen Quelltext.
PythonAmateur
User
Beiträge: 2
Registriert: Samstag 14. November 2015, 14:27

ich würde sagen das Problem liegt in der Ausgabe.
Ich kann die Elemente als ganzes ausgeben aber nicht als einzelne Elemente. Ich weiß auch nicht wo hier der Unterschied sein soll.

Gegeben ist mir nur dieser Code:

Code: Alles auswählen

import sys

eingabe = sys.stdin.readline()

wordList = eingabe.split(",")
BlackJack

Also Beispielsweise:

Code: Alles auswählen

#!/usr/bin/env python
# coding: utf8
from __future__ import absolute_import, division, print_function
import sys


def main():
    with open('test.txt', 'r') as lines:
        sys.stdout.writelines(sorted(lines))


if __name__ == '__main__':
    main()
Es sei denn das Dateiformat sieht anders aus, dann ist die Frage was eine Liste in einer Datei konkret bedeutet.

Edit: Gibst Du die Liste aus oder die einzelnen Elemente? Der Unterschied ist ob Du einmal ``print die_liste`` machst, das wäre nicht der Aufgabe entsprechend, oder ob Du ``print`` für jedes einzelne Element benutzt, das wäre der Aufgabe entsprechend. Hinweis dazu habe ich ja schon gegeben.
BlackJack

@PythonAmateur: Also hast Du schon eine Liste mit Worten. Dann ist der nächste Schritt das sortieren. Dazu habe ich ja auch einen Hinweis gegeben.

`wordList` sollte von der Schreibweise eher `word_list` sein, allerdings haben konkrete Grunddatentypen in Namen nichts zu suchen. Diese „ungarische Notation“ war so nie gemeint und ist in der Form auch nicht mehr angesagt. Gerade bei dynamisch typisierten Sprachen mit „duck typing“ machen die mehr Probleme und Arbeit als sie irgendeinen Nutzen bringen. `words` reicht völlig aus.

Bezüglich der Schreibweise und anderer Konventionen an die man sich halten sollte, wird mal einen Blick in den Style Guide for Python Code.

Auf Modulebene nur Konstanten, Funktionen, und Klassen zu definieren und auch das Hauptprogramm in eine Funktion zu stecken, siehe mein Beispiel im vorherigen Beitrag, sollte man sich auch möglichst früh angewöhnen.
Antworten