Создание словаря на python из текстового файла

#python #dictionary #txt

#питон #словарь #текстовый текст

Вопрос:

Я знаю, что варианты этого уже задавались раньше, но я все еще пытаюсь переместить текстовый файл в словарь. В текстовом файле имена и суммы разделены символом «:». У меня возникли проблемы с функцией strip, которая не удаляет пустые строки. Еще одна проблема, с которой я сталкиваюсь, заключается в том, что если две строки имеют один и тот же ключ, я хотел бы суммировать значения. Я все еще относительно новичок в python, поэтому буду признателен за любую помощь!

введите описание изображения здесь

Комментарии:

1. добро пожаловать в SO, вы должны вставить код, а не изображения, добавить пример того, что вы пробовали и в чем проблема.

2. Этот файл выглядит довольно сломанным для меня. Что с этим?

3. Функция strip не удаляет пустые строки. Он удаляет пробелы в начале и конце строки. Если строка пуста, вы останетесь с пустой строкой, вам нужно пропустить это самостоятельно.

4. Например. line = line.strip() за которым следует if line == '': continue

Ответ №1:

очень просто, но небезопасно, есть много мест, где ваша программа может выйти из строя, но вас, вероятно, это не волнует

 def loadToDict(path):
    f = open(path)
    d = {} 
    for line in f:
        line = line.strip()
        if line == "": # ignore empty line
            continue
        key, value = line.split(":") # decompose
        if key in d: # contains so add
            d[key]  = int(value)
        else:
            d[key] = int(value)
    return d