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

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

10.12.2019, 21:26. Показов 15064. Ответов 3

Студворк — интернет-сервис помощи студентам
Есть задача. Честно говоря, я даже не совсем понимаю, что от меня хотят. Решил только часть в **, код прикрепляю. Можете помочь?
Python
1
2
3
4
5
r = int(input())
lst = [input().split(',') for _ in range(r)]
for _ in range(int(input())):
    a, b = input().split(',')
    print(lst[int(a)][int(b)])
*Один из простейших форматов таблиц — CSV, что значит Comma-Separated Values, т. е. «значения, разделённые запятыми». В самом деле, в этом текстовом формате каждому ряду таблицы соответствует строка текста, а значения в ячейках одного ряда разделяются запятыми.*

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

Напишите программу, которая считывает таблицу в формате CSV, в том числе с запятыми и символами перехода на новую строку в вашем улучшенном формате, а затем выводит отдельные её элементы.

Формат ввода
На первой строке указано одно натуральное число R — число рядов таблицы.
Далее следуют R строк, представляющие ряды таблицы.
Далее следует одно натуральное число N — число элементов таблицы, которые нужно будет вывести.
Далее следует N строк, на которых приведены разделённые запятой координаты элементов таблицы (номер строки и номер столбца, нумерация с нуля).

(Запятые в примере расставлены не по правилам пунктуации.)

Запятые и символы перехода на новую строку (а также, возможно, какие-то ещё символы) кодируются предложенным вами способом.

Формат вывода
Выводятся N строк — соответствующие значения из таблицы.

Помните, что пользователь должен видеть запятые как запятые и переходы на новую строку как переходы на новую строку.

Пример
Ввод Вывод
4
Дама,сдавала в багаж
диван, чемодан, саквояж
картину, корзину, картонку
и маленькую собачонку,,
4
0,0
1,2
3,1
3,0
Дама
саквояж

и маленькую собачонку
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
10.12.2019, 21:26
Ответы с готовыми решениями:

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

Сформировать строку S таким образом, чтобы в нее попеременно вошли четные символы строки S1 и нечетные символы строки S2.
Вот задание: Даны строки S1 и S2. Сформировать строку S таким образом, чтобы в нее попеременно вошли четные символы строки S1 и...

Подсчитать количество символов в списке (список может содержать символы строки и цифры)
Есть такое решение (defun num-atoms (lst) (count-if #'atom lst)) При вызове (num-atoms '(a 2 bc)) считает bc как 1...

3
29 / 24 / 5
Регистрация: 15.10.2019
Сообщений: 268
10.12.2019, 21:47
Лучший ответ Сообщение было отмечено sch771551 как решение

Решение

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
n = int(input())
coord = []
table = [[el for el in input().split(',')] for i in range(n)]
m = int(input())
for _ in range(m):
    coord = input().split(',')
    x = int(coord[0])
    y = int(coord[1])
    j = table[x][y]
    if '#l' in table[x][y]:  # обозначим так запятую
        j = table[x][y]
        a = j[:j.find('#l')]
        b = j[j.find('#l') + 2:]
        print(','.join([a, b]))  # скливаем с запятой и без шифров
    elif '#h' in table[x][y]:  # обозначим так перенос
        i = table[x][y]
        a = i[:i.find('#h')]
        b = i[i.find('#h') + 2:]
        print('\n'.join([a, b]))  # перенос без шифров
    else:
        print(table[x][y])
вот ток зачли

Добавлено через 1 минуту
sch771551, ты сделал bf---?

Добавлено через 57 секунд
sch771551, сорян bf прост, та что в дз
2
0 / 0 / 0
Регистрация: 01.05.2020
Сообщений: 2
01.05.2020, 19:44
Добрый день. Это задача курса Яндекс Лицей. Предполагается, что задача будет решена учеником самостоятельно, а не списана под копирку, с готового решения, как это сделал sch771551.

sch771551, можете засчитать себе предупреждение.

billy121 уберите пожалуйста решение.
0
1 / 1 / 0
Регистрация: 30.07.2021
Сообщений: 6
14.12.2021, 12:29
Python
1
2
3
4
5
6
ls = []
for i in range(int(input())):
    ls.append(input().split(','))
for i in range(int(input())):
    a = input().split(',')
    print(ls[int(a[0])][int(a[1])])

Оно если что работает и мне засчитали)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
14.12.2021, 12:29
Помогаю со студенческими работами здесь

Как можно сделать чтобы принимаемые значения в одном методе могли передаваться в другой метод?
в метод operator_Click передаю значения нажатой кнопки, но мне надо чтобы это значение передавалось и в figure_click, которая в свою...

Как сделать так, чтобы строки одной таблицы не могли удалиться до тех пор, пока существуют соответствующие строки другой таблицы?
Имеются две таблицы: Заявки и соответствующие заявкам Испытания. Вначале пользователь заполняет строку Заявки, потом переходит на...

Как сделать, чтобы строки двумерного динамического массива могли бы иметь различную длину?
Здравствуйте,есть две задачи,которые нужно выполнить используя двумерный массив.одна задача почти сделана для двумерного массива только как...

Поиск значения в csv и извлечение значения определенного столбца из строки
Добрый вечер, У меня следующая задача: Есть файл C:\numberBlockList.csv вида: Клиент, компания, местонахождение, блок...

Лишние запятые в csv файле
Добрый день, при попытке добавить дату-время в виде названия столбца в csv стобик добавляется, но при єтом появляются запятіе лишние в...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек SDL3 и Box2D из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия SDL 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual. . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru