Форум программистов, компьютерный форум, киберфорум
Python
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.52/25: Рейтинг темы: голосов - 25, средняя оценка - 4.52
 Аватар для Oxidous
4 / 4 / 1
Регистрация: 03.09.2014
Сообщений: 156

Выборка строк из файла

02.11.2015, 09:32. Показов 4945. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Можно ли как-то вытягивать определённые строки из файла?

Допустим, есть текстовый документ,где записаны ответы. Когда человек отвечает на вопросы,то в зависимости от его ответов из текстового файла выбирается нужный ответ. Условие такое,что каждый ответ в текстовом файле записан не в одну строчку,а на несколько строк разбит. И, допустим,при определённом варианте ответов на вопросы юзеру выдаётся, допустим, третий ответ из текстового файла.
Что я имею ввиду:

Python
1
2
3
4
5
6
7
8
9
10
q1 = input ('За окном льёт дождь? y/n:  ')
q2 = input ('Сегодня обещали дождь? y/n:  ')
q3 = input ('Сейчас светит Солнце? y/n:  ')
 
if q1 == 'y' and q2 == 'y' and q3 == 'n':
f = open ('test.txt', 'r')
print (f.readlines(1)) # Большая вероятность,
print (f.readlines(2)) # что сейчас идёт дождь
print (f.readlines(3)) # или пойдёт в ближаёйшее время
f.close()
Быть может в текстовом файле можно как-то маркировать вопросы,а потом по этим меткам вытаскивать их, когда нужно?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
02.11.2015, 09:32
Ответы с готовыми решениями:

Выборка из строк файла
Слишком долго сижу над решением задачки!Прошу помощи экспертов! Дано: файл текстовый с содержимым: автор 1 название 1 1955 ...

Выборка строк из txt-файла
Доброе время суток, есть txt файл в котором есть строки с данными , но бывает что появляется дополнительная строка и разные данные. Каким...

Выборка из файла определенных строк
Форумчане, прошу помощи в решении вопроса: Есть csv файл, состоит из произвольного количества строк(в среднем порядка 500000 строк),...

9
Эксперт по компьютерным сетям
 Аватар для Jabbson
5907 / 3359 / 1036
Регистрация: 03.11.2009
Сообщений: 10,008
02.11.2015, 09:47
q1 = input ('За окном льёт дождь? y/n: ')
q2 = input ('Сегодня обещали дождь? y/n: ')
q3 = input ('Сейчас светит Солнце? y/n: ')
Python
1
2
qs = ['За окном льёт дождь? y/n: ', 'Сегодня обещали дождь? y/n:  ', 'Сейчас светит Солнце? y/n:  ']
q1, q2, q3 = (input(q) for q in qs)
if q1 == 'y' and q2 == 'y' and q3 == 'n':
Python
1
if all(x == 'y' for x in [q1,q2,q3,q4]):
f = open ('test.txt', 'r')
Python
1
with open ('test.txt', 'r') as f:
Добавлено через 4 минуты
а для того, чтобы выдавать ответы - нужно либо знать где ответ находится (абсолютная или относительная позиция) либо иметь метку в файле, откуда брать ответ. либо как вариант иметь ответы не в текстовом файле.
1
Эксперт NIX
 Аватар для Marinero
2796 / 2039 / 682
Регистрация: 02.03.2015
Сообщений: 6,509
02.11.2015, 10:19
Jabbson, Ну если уж на то пошло
Цитата Сообщение от Jabbson Посмотреть сообщение
q1, q2, q3 = (input(q) for q in qs)
Python
1
2
yn = [input(q) for q in qs]
if all(map('y'.__eq__, yn)):
2
 Аватар для Oxidous
4 / 4 / 1
Регистрация: 03.09.2014
Сообщений: 156
04.11.2015, 16:20  [ТС]
Jabbson, Вот это меня и интересует, каким образом можно создавать метки в тестовом файле и потом вытаскивать нужные данные из файла по меткам. Сейчас у меня пока реализовано без текстового файла, каждому условию выдаётся свой ответ, через print. Просто записаны всё возможные варианты ответов и каждому такому варианту выдаётся свой ответ Всё работает,но в случае замены ответов или вопросов - очень муторно всё менять просто будет ))
0
Эксперт NIX
 Аватар для Marinero
2796 / 2039 / 682
Регистрация: 02.03.2015
Сообщений: 6,509
04.11.2015, 16:29
Цитата Сообщение от Oxidous Посмотреть сообщение
метки … вытаскивать нужные данные
называются словарями
1
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
04.11.2015, 16:33
Цитата Сообщение от Oxidous Посмотреть сообщение
Вот это меня и интересует, каким образом можно создавать метки в тестовом файле и потом вытаскивать нужные данные из файла по меткам
Проблема в том, что для хранения структурированных данных выбран неструктурированный формат. Берите либо соответствующий формат, либо БД.
1
3 / 3 / 2
Регистрация: 24.11.2014
Сообщений: 27
04.11.2015, 17:01
ИМХО, тут лучше воспользоваться стандартной библиотекой pickle
1
 Аватар для Oxidous
4 / 4 / 1
Регистрация: 03.09.2014
Сообщений: 156
04.11.2015, 17:30  [ТС]
0x10, А можно узнать, какой тогда формат нужен для структурированных данных?
0
3 / 3 / 2
Регистрация: 24.11.2014
Сообщений: 27
04.11.2015, 17:33
хранить записи в словарях, записывать и считывать с помощью функций pickle
0
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
04.11.2015, 17:35
Цитата Сообщение от Oxidous Посмотреть сообщение
А можно узнать, какой тогда формат нужен для структурированных данных?
Наиболее распространенные: json, xml.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
04.11.2015, 17:35
Помогаю со студенческими работами здесь

Выборка строк из текстового файла
Добрый день. Есть файл формата .txt большого размера, сделанный по такому шаблону: Parent: .. Name: ..... Text: ..... Мне...

Выборка определённых строк из файла .txt
Добрый вечер, столкнулся с учебной задачей которую не понимаю как реализовать. Суть в том что код должен записывать строки в нумерованный...

выборка и подсчет строк из текстового файла
Всем доброго времени суток ! У меня следующая проблема. Я открываю текстовый файлик и выцепляю оттуда необходимые мне значения. Дальше...

Выборка определенных строк из таблицы .csv файла
Скачиваю csv БД с сайта каждые 3-4 минуты,строк более 80к, нужно выбирать нужные строки, пример типа строки id;idd;name;name2; и т.д. ,...

Выборка строк из текстового файла по определённому шаблону с исключениями по заданным словам
Вот так выглядит команда... Select-String "Бальзам.*" C:\Users\бд.txt | Foreach-Object {$_.Line} > out.txtнадо добавить минус слова,...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло. Но на выплатах по больничным это. . .
1С: Контроль уникальности заводского номера
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере документа выдачи шин для спецтехники с табличной частью. Данные берутся из регистра сведений, по которому настроено. . .
Хочу заставить корпорации вкладываться в здоровье сотрудников: делаю мат модель здравосохранения
anaschu 22.03.2026
e7EYtONaj8Y Z4Tv2zpXVVo https:/ / github. com/ shumilovas/ med2. git
1С: Программный отбор элементов справочника по группе
Maks 22.03.2026
Установка программного отбора элементов справочника "Номенклатура" из модуля формы документа. В качестве фильтра для отбора справочника служит группа номенклатуры. Отбор по наименованию группы. . .
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс. Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
1С: Программный отбор элементов справочника по значению перечисления
Maks 21.03.2026
Установка программного отбора элементов справочника "Сотрудники" из модуля формы документа. В качестве фильтра для отбора служит значение перечислений. / / Событие "НачалоВыбора" реквизита на форме. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru