У меня есть набор списков, в которых есть целые числа, и я хочу преобразовать списки переменных из списков в целые числа
Пока это мой код:
from csv import reader
from collections import defaultdict
from ast import literal_eval
from pprint import pprint
data = defaultdict(list)
with open('crystal.csv') as f:
csv_reader = reader(f)
current_header = None
for line in csv_reader:
# We found a header
if len(line) == 1 and all(item.isalpha() or item.isspace() for item in line[0]):
current_header = line[0]
# Otherwise normal line with ints and floats
else:
data[current_header].append(list(map(literal_eval, line)))
pprint(data)
mult=data['multiplicty']
lattice=data['lattice parameters']
occup=data['occupancy']
sites=data['atom sites']
И мойCSV-файл:
multiplicty
4.123
lattice parameters
1,0,0
0,1,0
0,0,1
atom sites
0,0,0
0.5,0.5,0.5
1,1,1
occupancy
1,0,0
0,1,0
0,0,1
В идеале я хотел бы иметь выходные данные, такие как:
решетка = 4.123
параметр решетки = [1,0,0;0,1,0; 0,0,1] матрица