Ich habe eine Datei projects.txt
genannt, die die folgende Codezeile enthält:Python-Ladeliste von Datei- und Druck zufällige Auswahl
['Apollo', 'Astro', 'Aurora', 'Barcelona']
Ich verwende den folgenden Python2 Code, um die Datei zu laden und versuchen, eine zufällige Auswahl drucken aber ich bin immer nur ein einzelnes Zeichen aus meiner Liste bekommen:
import random
projNames = open('projects.txt').read()
print(random.choice(projNames))
Beispiel Ergebnis: ein
Wenn ich jedoch den Inhalt der Textdatei direkt in den Code kopieren, funktioniert es für mich richtig.
import random
projNames = ['Apollo', 'Astro', 'Aurora', 'Barcelona']
print(random.choice(projNames))
Beispiel Ergebnis: Apollo
Ich brauche es in der Lage sein, den Inhalt der Datei in meiner .py
Datei den Code direkt eher zu laden als bearbeiten.
Was habe ich in meinem ursprünglichen Code übersehen? Ich verwende speziell Python 2.7.x (neueste Version).
Ihre 'projects.txt' Datei enthält eine Zeichenfolge mit dem Inhalt "[ 'Apollo', 'Astro', 'Aurora', 'Barcelona']"? – kvorobiev
Versuchen Sie zuerst, es in eine Liste zu konvertieren, indem Sie 'projNames = eval (projNames)' – ayhan
Nein, die Projektdatei enthält keine doppelten Anführungszeichen, die die gesamte Liste umgeben. –