Перейти к основному содержимому

Операции над таблицами

🔗 Оригинальная страница — Источник данного материала


Описание

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

Они могут использоваться для:

  • Работы с комплексом данных;
  • Добавления и получения элементов таблицы;
  • Удаления строк, столбцов и дублей;
  • Привязки к файлу;
  • Получение количества строк и столбцов;
Перед началом работы таблицу надо создать.

Как создать таблицу?

image-20200815-214108

Как добавить экшен в проект?

Через контекстное меню: Добавить действие → Таблицы → Операции над таблицей

image-20200814-184112


Принцип работы

На заметку

В качестве номера столбца можно использовать числа (нумерация с нуля), либо буквы латинского алфавита (в верхнем регистре).

Взять столбец

Позволяет взять значения определенного столбца из таблицы и положить его в список.

image-20200814-190232

  1. Выбираем таблицу.
  2. Определяем функцию.
  3. Указываем Столбец, который хотим забрать (или переменную).
  4. Выбираем список, в который сохраним все значения столбца.
Пример

Поместим все значения столбца B из Таблицы 1 в Список 1

image-20200814-191359

ТаблицаСписок
image-20200814-191010image-20200814-191239

Взять строки

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

image-20200814-192818

  • Критерии выбора строк:
    • Все;
    • Не содержит текст;
    • Неудовлетворяющие регулярному выражению;
    • Первую;
    • Под номерами;
    • Случайную;
    • Содержит текст;
    • Удовлетворяющие регулярному выражению;
  • Удалить после взятия. Определяет, останутся ли взятые строки в таблице или нет.
  • Поместить результат. Строку можно отправить В список или в Переменные. А далее идет таблица, где мы можем это контроллировать.
Пример

Берём случайные строки из Таблицы 1 и кладём в переменные с дальнейшим удалением.

image-20200814-193546

Таблица после обработкиОкно переменных
image-20200814-193830image-20200814-194704

Переменная peremennay_3 пустая, так как таблица содержит только столбцы A и B


Добавить список

Здесь же наоборот, можно положить выбранный список в определенный столбец таблицы.

image-20200814-194954

Выбираем столбец, в который положим → Указываем список.

Пример

Берём значение из Списка 1 и помещаем его в столбец D Таблицы 1

image-20200814-195131

Список 1Таблица 1 после обработки
image-20200814-195254image-20200814-200051

Значения из списка не удаляются


Добавить строку

Обработка текста с функцией «В таблицу»

Больше подходит для одновременного добавления нескольких строк в таблицу.

С помощью этой функции в таблицу можно положить статический текст (string) или переменную. Эти данные будут добавлены в конец таблицы.

image-20200814-200623

Обратите внимание

Если таблица привязана к файлу с расширениями .csv, .xls(x) или .ods, то в качестве разделителя нужно использовать {-String.Tab-}.

Пример

Добавим строку своего текста в разные столбцы.

image-20200814-200401

До обработкиПосле
image-20200814-200750image-20200814-201211

Записать ячейку

Добавляет текст в конкретную ячейку.

image-20200814-201841

  • Строка и Столбец. Здесь указываем статические координаты ячейки. Это также можно сделать через переменные.
  • Значение. Пишем статический текст (string) или переменную.
Пример

Добавляем текст вместе с заданной ячейкой

image-20200814-202026

До обработкиПосле
image-20200814-202516image-20200814-202820

Строки всегда добавляются в конец таблицы


Получить количество столбцов

Так можно узнать, сколько всего столбцов содержит таблица.

image-20200814-202916

Результат можно положить в переменную

Cодержит только числовое значение int.

Пример

Получаем количество столбцов Таблицы 1 и кладём в переменную

image-20200814-203017

Таблица 1Переменная kolichestvo_strok
image-20200814-203218image-20200814-203321

Получить количество строк

Эта операция показывает, сколько строк содержит таблица.

image-20200814-203431

  1. Выбираем таблицу с которой будем работать.
  2. Указываем функцию.
  3. Переменная для получения результата.
Результат можно положить в переменную

Cодержит только числовое значение int.

Пример

Получаем в переменную количество строк из Таблицы 1

image-20200814-203759

Таблица 1Переменная kolichestvo_strok
image-20200814-203916image-20200814-205216

Привязать к файлу

Позволяет привязать таблицу к файлу в ходе выполнения проекта.

Этот экшен нужно использовать, если путь файла не известен на момент старта шаблона, а будет вычислен только во время выполнения.

image-20200814-205851

  • Путь к файлу. Выбираем файл или указываем переменную, содержащую путь к файлу.
  • Создавать файл при отсутствии. Если файл отсутствует по указанному пути, то он будет автоматически создан.
Пример

Привязываем Таблицу 1 к выбранному файлу

image-20200814-205718


Прочитать ячейку

Получить значение из заданной ячейки

image-20200814-205922

  • Строка и Столбец. Здесь указываем статические координаты ячейки. Это также можно сделать через переменные.
  • Положить в переменную. Указываем переменную, в которую положим результат.
Пример

Получаем в переменную значение из ячейки B2 Таблицы 1

image-20200814-210356

Таблица 1Переменная yacheika
image-20200814-211524image-20200814-210857

Сортировать таблицу

Сортирует элементы таблицы по убыванию или возрастанию.

image-20200814-212049

  • Столбцы. Выбираем нужные.
    ZennoDroid автоматически определяет столбцы со значениями и предлагает их.
  • Сортировать как числа, если это возможно. Использовать принцип сортировки как у чисел.
Условие для работы

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

  • Тип сортировка. Сортируем По возрастанию или По убыванию.
Пример

Отсортируем по убыванию значения всех столбцов Таблицы 1

image-20200814-212913

До обработкиПосле
image-20200814-214045image-20200814-214156

Сохранить в файл

Сохранение таблицы в файл во время выполнения проекта.

image-20200814-214404

Для работы нужно выбрать файл или указать переменную, содержащую путь к нему.

ОБРАТИТЕ ВНИМАНИЕ

Функция умеет только перезаписывать существующий файл.

Пример

Сохраняем значения Таблицы 1 в файл

image-20200814-214710

Таблица 1Получившийся файл
image-20200814-214822image-20200814-214959

Удалить дубли

Эта функция удаляет повторяющиеся значения из таблицы.

image-20200814-215041

  • Столбцы. Проверяем на дубли Все или конкретные.

ZennoPoster автоматически определяет столбцы со значениями и предлагает их.

Пример

Удаляем все дубли из Таблицы 1

image-20200814-215349

До обработкиПосле
image-20200814-215602image-20200814-215736

Удалить столбец

Целиком удаляет выбранный столбец из таблицы.

image-20200814-215817

Указываем конкретный столбец или переменную.

Столбец будет удалён со всеми значениями
Пример

Удаляем столбец B из Таблицы 1

image-20200815-211121

До обработкиПосле
image-20200815-211536image-20200815-211711

Удалить строки

Позволяет удалить определенные строки во всех столбцах.

image-20200815-213422

  • Критерии выбора строк:
    • Все;
    • Не содержит текст;
    • Неудовлетворяющие регулярному выражению;
    • Первую;
    • Под номерами (нумерация с нуля);
    • Случайную;
    • Содержит текст;
    • Содержащие только пробельные символы;
    • Удовлетворяющие регулярному выражению;
Заданная строка будет удалена во всех столбцах
Пример

Удаляем третью строчку из Таблицы 1

1NFJfjUKn7

До обработкиПосле
2020-07-25_13-31-212020-08-03_20-40-14

Третья строка была удалена целиком


Советы при работе с таблицами

Эта информация будет полезна для корректной работы в проектах
  • Не стоит привязывать к таблице слишком большие файлы (100мб и более) без опции «Сохранять изменения таблицы в файл». Особенно, если у вас мало оперативной памяти.
  • При работе с таблицой, которая привязана к одному файлу сразу в нескольких проектах, нужно использовать одинаковый разделитель. Например, если в одном шаблоне столбцы разделены через ; , а в другом через - , то произойдет ошибка.
  • Когда проект работает в многопоточном режиме, а каждый поток при этом обрабатывает свою отдельную строку, то лучше включить опцию «Сохранять изменения таблицы в файл». Это позволит брать данные из таблицы и удалять их после взятия.
  • Если вы синхронизируетесь с файлом, то все изменения в каждом из потоков будут сразу отображаться в проекте, так как таблица одна на все потоки.
  • Однако если вы не используете синхронизацию с файлом, то для каждого потока будет создаваться своя копия таблицы. В этом случае удаление строки таблицы из одного потока не меняет таблицу в других потоках.
  • Стоит учитывать, что таблицы в оперативной памяти занимают намного больше места, чем исходный файл на жестком диске. Например, таблица на основе файла CSV размером 10 MB в 100 потоков без синхронизации с файлом, может занять 5 GB оперативной памяти. Поэтому старайтесь не использовать списки и таблицы в режиме «без синхронизации» с файлом без необходимости.

Пример использования

Собрать со страниц название нужных товаров в список и добавить их из списка в таблицу для дальнейшего использования.

2020-08-03_20-54-19

  1. Загружаем страницы.
  2. Собираем необходимые значения в список.
  3. Создаём таблицу.
  4. Добавляем экшен и указываем функцию добавить список.
  5. Указываем список и столбец в который сохраним значения.

Полезные ссылки

  1. ❗→ Таблица
  2. ❗→ Google таблицы
  3. ❗→ Список
  4. ❗→ Операции над списком
  5. ❗→ Переменные проекта
  6. ❗→ Тестер регулярных выражений
  7. ❗→ Диапазоны значений