У меня есть файл, содержащий около 25000 строк, и это файл формата s19.
каждая строка имеет вид :S214 78001000802000000010000000000A508CC78C7A
В самом файле нет пробелов, первая часть 780010
— это адрес этой строки, и я хочу, чтобы это было значением ключа dict, и я хочу, чтобы часть данных00802000000010000000000A508CC78Cбыла значением этого ключа. Я написал свой код следующим образом::
def __init__(self,filename):
infile = file(filename,'r')
self.all_lines = infile.readlines()
self.dict_by_address = {}
for i in range(0, self.get_line_number()):
self.dict_by_address[self.get_address_of_line(i)] = self.get_data_of_line(i)
infile.close()
get_address_of_line()и get_data_of_line()— это просто функции нарезки строк. get_line_number()перебирает self.all_lines и возвращает int
проблема в том, что процесс инициализации занимает у меня более 1 минуты, это то, как я неправильно строю dict или python просто нужно так долго это делать?
И, кстати, я новичок в python:)возможно, код больше похож на C/C++, буду признателен за любые советы о том, как программировать как python:)