Чтение файла в словарь на python, как мне убедиться, что дубликатов нет?

#python-3.x #dictionary #text-files

#python-3.x #словарь #текстовые файлы

Вопрос:

Я читаю в файле и создаю словарь из первых двух элементов в каждой строке, как мне убедиться, что ни один из ключей не совпадает, чтобы я мог закрыть файл, если это произойдет? У меня есть код, который создает словарь, но я не уверен, как это сделать, устранение неполадок, любая информация будет высоко оценена!: Вот мой код для словаря:

 my_dict = {}
info = open(data_file,"r")
for line in info:
    line = line.rstrip()
    items = line.split('t')
    ID = items[0]
    Value = items[1]
    my_dict[ID] = Value
    return my_dict
  

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

1. Вы имеете в виду просто проверку if ID in my_dict: ?

2. да, поскольку он вводит элементы в словарь, я хочу, чтобы он останавливался, если есть и повторяющиеся идентификаторы

3. Просто проверьте if ID in my_dict: raise SomeException перед строкой my_dict[ID] = Value

4. потрясающе! большое спасибо!

Ответ №1:

Вот так:

 my_dict = {}
with open(data_file,"r") as info:  # Closes upon finishing
    for line in info:
        items = line.rstrip().split('t')
        ID = items[0]
        Value = items[1]
        if ID in my_dict:  # Exits the for loop if ID already exists
            break
        my_dict[ID] = Value

    return my_dict  # Returns the gathered data