Jak utworzyć wiele (ale indywidualnych) pustych list w Pythonie?
Napisałem skrypt, który w pewnym momencie generuje kilka pustych list, stosując kod o strukturze:
A,B,C,D=[],[],[],[]
który wytwarza wyjście:
A=[]
B=[]
C=[]
D=[]
Tak jak teraz, muszę ręcznie modyfikować litery za każdym razem, gdy używam innego zestawu danych jako danych wejściowych. Chcę móc to zautomatyzować. Myślałem o tym:
FieldList=[A,B,C,D]
bracket=[]
[[0]for field in FieldList]
for field in FieldList:
bracket=bracket+["[]"]
FieldList=bracket
Tutaj próbowałem replikować „A, B, C, D = [], [], [], []”, ale najwyraźniej to nie działa.
Próbowałem też:
FieldList=[A,B,C,D]
bracket=[]
[[0]for field in FieldList]
for field in FieldList:
field=[]
Ale na końcu tworzy tylko pojedyncze pole „pole”.
#Tak więc potrzebuję list. Będę czytać informacje z csv i dodawać dane, które wyciągam z każdego wiersza do list. Jeśli generujesz „listę list”, czy mogę nadal dzwonić do każdego z nich indywidualnie, aby dodawać do nich rzeczy?
A,B,C,D=[],[],[],[]
with open(csvPath+TheFile, 'rb') as csvfile: #Open the csv table
r = csv.reader(csvfile, delimiter=';') #Create an iterator with all the rows of the csv file, indicating the delimiter between columns
for i,row in enumerate(r): #For each row in the csv
if i > 0: #Skip header
A.append(float(row[0])) #Extract the information and append it to each corresponding list
B.append(float(row[1]))
C.append(format(row[2]))
D.append(format(row[3]))