Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.78/9: Рейтинг темы: голосов - 9, средняя оценка - 4.78
5 / 3 / 2
Регистрация: 12.09.2019
Сообщений: 270

Прочитать массив словарей из файла

08.01.2020, 19:22. Показов 2039. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
def readData(pathway):
 dictArr = []
 with open(pathway) as file:
  for line in file:
   key, *val = line.split()
   dictArr.append({}.fromkeys(key,val))
 
 if not file:
  print("Ошибка! Заданы не все данные.")
  exit()
 
 
pathway = "data.txt"
dictArr = readData(pathway)
for dictionary in dictArr:
    print(dictionary)
По идее этот код должен решать такую задачу.Он читает массив словарей из файла в качестве аргyмента принимает имя файла. Возвращзает массив словарей.
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
08.01.2020, 19:22
Ответы с готовыми решениями:

Написать функцию, которая читает массив словарей из файла в качестве аргумента принимает имя файла
Написать фyнцию, которая читает массив словарей из файла в качестве аргyмента принимает имя файла. Возвращзает массив словарей. ...

Массив: Создать БД как список словарей, получив информацию из файла
Создать БД как список словарей, получив информацию из файла. Число полей(ключей) не менее 5. Реализовать отдельными функциями добавление,...

Прочитать данные из файлов и создать файл в виде сложения словарей в массив
Помогите, пожалуйста, с задачкой: 1. Скачать файлы: https://github.com/konflic/front_example/blob/master/data/books.csv и...

9
 Аватар для Semen-Semenich
5222 / 3469 / 1173
Регистрация: 21.03.2016
Сообщений: 8,295
08.01.2020, 20:23
Цитата Сообщение от artem24115 Посмотреть сообщение
Он читает массив словарей из файла
таким способом из файла вы можете прочитать только строки и думаю что у вас в файле тоже строки хотя вы видите там словари. простой пример-
что вы видите тут:
{1:'one', 2:'two'} ?
0
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
08.01.2020, 20:54
Цитата Сообщение от artem24115 Посмотреть сообщение
Почему не работает этот код?
Ничего не забыл приложить? Или по твоему мы должны сами догадаться что именно не работает?

Добавлено через 1 минуту
Цитата Сообщение от artem24115 Посмотреть сообщение
if not file:
Бессмысленная проверка.
1
5 / 3 / 2
Регистрация: 12.09.2019
Сообщений: 270
09.01.2020, 11:40  [ТС]
Я вижу словарь

Добавлено через 3 минуты
Вот как в файле записано.
0 Artem 234
1 Jen 2145
2 Andr 2548
0
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
09.01.2020, 12:57
Цитата Сообщение от artem24115 Посмотреть сообщение
Вот как в файле записано.
Это не словарь. Это просто строки с пробелами. Но имея большое воображение, можно представить себе и словарь.
Впрочем, это не важно. Важно, что нет никакого обоснования фразе "не работает".
0
5 / 3 / 2
Регистрация: 12.09.2019
Сообщений: 270
09.01.2020, 13:00  [ТС]
Тоесть проблема просто в неправильной записи в файле?
0
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5972 / 3734 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
09.01.2020, 13:49
Лучший ответ Сообщение было отмечено artem24115 как решение

Решение

Содержимое файла верное.

Строка потеряна:
Python
1
return dictArr
1
5 / 3 / 2
Регистрация: 12.09.2019
Сообщений: 270
09.01.2020, 14:54  [ТС]
Опять вы меня выручаете, действительно теперь всё рабоает. Снова вам спасибо.
0
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
09.01.2020, 15:15
Цитата Сообщение от artem24115 Посмотреть сообщение
Тоесть проблема просто в неправильной записи в файле?
Ваша проблема в том, что вы не читает сообщения об ошибках, в которых интерпретатр вам все подробно рассказывает.
Еще эти ошибки, называемые stack trace, принято выкладывать на форум, если вы не понимаете что они означают.
Почитайте правила формулирования вопросов на стековерфлоу: Как создать минимальный, самодостаточный и воспроизводимый пример.

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

Опишите проблему. «Это не работает» — не является описанием проблемы. Расскажите, что именно вы хотите получить в результате. Приведите точное сообщения об ошибке (слово в слово), укажите на проблемную строку в коде. Суммируйте суть проблемы в заголовок вашего вопроса.
Предупредите возникновение любых вопросов, не относящихся к проблеме. Если компиляция не является темой вашего вопроса, убедитесь, что в вопросе нет упоминаний об ошибках на стадии компиляции. Используйте программы, такие как JSLint, чтобы валидировать интерпретируемые языки. Проверьте корректность HTML и XML.
Убедитесь, что пример действительно воспроизводит проблему! Если вы случайно решили проблему, но не проверили воспроизводится ошибка или нет, лучше узнать об этом до того, как попросите помощи у сообщества.
0
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5972 / 3734 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
09.01.2020, 15:43
Цитата Сообщение от Garry Galler Посмотреть сообщение
Ваша проблема в том, что вы не читает сообщения об ошибках, в которых интерпретатр вам все подробно рассказывает.
Так исключение не бросается. Или должно было броситься… Ладно, тут ты прав, дальше прочитанный "список" итерировали:
Code
1
TypeError: 'NoneType' object is not iterable
Только ТС про это промолчал.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
09.01.2020, 15:43
Помогаю со студенческими работами здесь

Прочитать из файла с данными первые десять чисел в одномерный массив а последующие числа — в двумерный массив (матрицу) 7х7 элементов.
Восклицание ПОМОГИТЕ ПОЖАЛУЙСТА ДЕВОЧКЕ-СТУДЕНТКЕ Помогите мне тоже кто-нибудь пожалуйста( Мне уже завтра нужно сдать. Помогите написать...

Прочитать из файла массив строк символов. Отсортировать массив по алфавиту (методом выбора). Результат вывести на экран и записать в файл
На языке С прочитать из файла массив строк символов. Отсортировать массив по алфавиту (методом выбора). Результат вывести на экран и...

Прочитать массив из файла
Программа, которая создаёт одномерный статический массив, прочитав из файла его размер, а затем заполнит его, читая из того же файла...

Как прочитать массив из файла?
Дан файл нужно записать 270 элементов в однномерный массив начиная с 13 строчки

Прочитать данные из файла в массив
Здравствуйте, я посоветоваться. Задача моего кода состоит в том, что у меня есть текстовый файл с числами, а в коде есть переменные,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru