Может кто-нибудь сказать мне, как положить .text файл в словарь, содержащий число и строку с python - PullRequest
0 голосов
/ 20 февраля 2020

Я делаю проект о хранителе контактов, но я не могу прочитать ни одного контакта в коде ... Пожалуйста, помогите мне ... Я даю код и проблему Если вы можете пожалуйста предоставьте мне всю информацию о поиске отдельного пользователя или всех связанных пользователей ... Спасибо ...

what = input("Do you want to read a single contact(y, n): ")
if what == 'y':
    who = input("Please Enter the name: ")
    a = open('contacts.txt', 'a')
    for line in a:
        k, v = line.strip().split('=')
        users[k.strip()] = v.strip()
        a.close()

    for i in users:
        if who.lower() == i.lower() or i.startswith(who[:3]):
            print(i)

и это ошибка: '

Traceback (большинство последний вызов последним): Файл "C: / Users / Teerth Jain / Desktop / teerth_made_projects / contacts.py", строка 18, для строки в: io.UnsupportedOperation: не читается, введите код здесь

«

1 Ответ

0 голосов
/ 20 февраля 2020

Вы открыли файл в режиме записи, а не в режиме чтения, используйте "r" вместо "a" (который добавляется к файлу)

a = open('contacts.txt', 'r')

Кроме того, не уверен, если Вы правильно указали отступ в своем вопросе, но a.close() должно быть за пределами для l oop

. Как отмечено в комментариях, использование with предпочтительнее, чем явное закрытие файла.

with open('contacts.txt', "r") as a:
    for line in a:
        k, v = line.strip().split('=')
        users[k.strip()] = v.strip()
...