Добрый день. у меня есть небольшой класс по считыванию данных из файлов. В этом классе я считываю данные из файла, они предаставлены в .csv файле 2-мя строками таким образом
метан, этан, пропан, изобутан, бутан, изопентан, пентан, изогексан, гексан, изогептан, гептан, изооктан, октан, изононан, нонан
0, 0, 0, 0, 0, 0, 0, 21, 34, 60, 105, 128, 50, 80, 42
и в самом методе я пытаюсь считать данные и заменить названия элементов - числами, использую словарем
вот сам файл
spoilerclass loading_flle:
'''
класс по считыванию файлов
'''
def __init__(self):
self.paraphine = {
'метан': -161.5,
'этан': -88.6,
'пропан': -42.1,
'бутан': -0.5,
'изобутан': -11.7,
'пентан': 36.1,
'изопентан': 27.9,
'неопентан': 9.5,
'гексан': 68.73,
'изогексан': 60.3,
'демитилбутан': 49.7,
'изогептан': 90,
'гептан': 98.4,
'метилгексан': 90.1,
'этилпентан': 93.5,
'диментилпентан': 79.2,
'триптан': 80.9,
'октан': 125.68,
'метилгептан': 117.6,
'деметилгексан': 106.8,
'метил-3-этилпентан': 115.7,
'изооктан': 109.8,
'тетраметилбутан': 106.5,
'изононан': 143.3,
'нонан': 150.8,
'декан': 174.1,
'ундекан': 195.9,
'додекан': 216.3,
'эйкозан': 342.7,
'тридекан': 235.4,
'тетрадекан': 250,
'водород': 252.9
}
self.data = []
self.load_data_on_files()
def load_data_on_files(self):
'''
метод считывающий исходные данные из файлов
'''
for file_filename in os.listdir(directory_load_file_csv):
x, y = np.genfromtxt(directory_load_file_csv +
file_filename, dtype='str', delimiter=', ')
print(x[0])
# x,y = np.loadtxt(directory_load_file_csv +
# file_filename, delimiter=',')
for i, item in enumerate(x):
x[i] = self.paraphine[x[i]]
if len(x) != len(y): # проверка данных
print('разное количество данных! перепроверьте!!!!!!!')
self.data.append([x, y])
но не совсем получается :\
выводит ошибку
x = self.paraphine[x]
KeyError: ‘метан’
может подсказать, как исправить ?
Отредактировано druidich92 (сегодня 15:33:33)