Ich will zum Lesen von Daten aus einer text-Datei und wandeln es in die Liste der Transaktionen

Ich habe eine text Datei mit Daten und ich möchte diese Daten zu Lesen, um eine Liste.

enter image description here

Ich habe versucht diesen code, er covert es in der Liste aber es fügt eine doppelte Anführungszeichen um jede Zeile

file = 'filepath'
data = [line.rstrip('\n') for line in open(file)]

Anstelle von doppelten Anführungszeichen um jede Zeile, ich möchte Runde Klammern "(" um jede Zeile

enter image description here

1 Antworten

  • Lante Dellarovere
    4. Mai 2019

    Ich weiß nicht, ob Zitate in Ihre txt-Datei ein gewünschtes Verhalten.
    Wenn die Datei:

    'looking', 'website'
    'ciao', 'hello'
    

    und Sie möchte eine Liste von Tupeln:

    file = 'filepath'
    data = [tuple([x.strip()[1:-1] for x in line.rstrip('\n').split(",")]) for line in open(file)]
    >>> data
    
    [('looking', 'website'), ('ciao', 'hello')]
    

    oder nutzen ast.literal_eval:

    import ast
    
    data = [ast.literal_eval(line.rstrip('\n')) for line in open(file)]
    

    wenn Ihr die Ausgabe ist eine Liste von Zeichenfolgen, fügen Sie einfach eine Klammer:

    data = ["(" + line.rstrip('\n') + ")" for line in open(file)]
    >>> data
    
    ["('looking', 'website')", "('ciao', 'hello')"]