💀
Второй курс РПО
Основы проектирования баз данных
Основы проектирования баз данных
  • Понятия баз данных
  • Типы моделей данных
    • Реляционные базы данных
  • Реляционная алгебра
  • Модель процессов
  • Проектирование базы данных
  • Нормальные формы
    • Определения, и самое важное
  • Моделирование базы
    • Практическая работа: Решение
    • Для тех у кого iq как у Антона
  • Инструменты проектирования
  • Проектирование БД
  • Ключи и объекты
  • SQL Операции
  • Группировка данных
  • Пользовательский интерфейс
  • Проектирование БД
  • Управление таблицами
  • Ключи и индексы
  • Сортировка и поиск
    • 🤪Короткая версия
  • Работа с файлами
  • Запись массива в таблицу
  • Меню баз данных
  • Рабочие окна
  • Создание формы
  • Создание проекта БД и интерфейса
  • Ограничения полей
  • Работа с таблицами
  • Обработка транзакций
Powered by GitBook
On this page
  • Что такое двумерный массив?
  • Запись массива в табличный файл
  • Основные команды ввода-вывода
  • Функции для работы с массивами
  • Полный пример: Добавление и запись
  • Итоги

Запись массива в таблицу

15.11.2024

Работа с базами данных требует преобразования данных из массивов в удобные для хранения и чтения табличные файлы.

Что такое двумерный массив?

Двумерный массив — структура данных, представленная в виде строк и столбцов, подобно таблице. Пример массива на Python:

data = [
    ["ID", "Name", "Age"],
    [1, "Alex", 25],
    [2, "Maria", 30],
    [3, "Sergey", 22]
]

Каждая строка массива — запись, каждый элемент строки — значение столбца.


Запись массива в табличный файл

Что такое CSV?

CSV (Comma-Separated Values) — формат, где данные записываются через запятую. Пример файла:

ID,Name,Age
1,Alex,25
2,Maria,30
3,Sergey,22

Код для записи в CSV

Пример записи двумерного массива:

import csv

data = [
    ["ID", "Name", "Age"],
    [1, "Alex", 25],
    [2, "Maria", 30]
]

with open('output.csv', mode='w', newline='') as file:
    writer = csv.writer(file)
    writer.writerows(data)

Используйте параметр newline='', чтобы избежать пустых строк между записями в файле.


Основные команды ввода-вывода

Работа с файлами

  • Открытие файла: open(filename, mode) — открывает файл. Режимы:

    • r — чтение.

    • w — запись (перезаписывает файл).

    • a — добавление в конец файла.

  • Запись данных: file.write(data) — записывает строку в файл.

  • Чтение данных: file.read() — считывает весь файл. file.readlines() — возвращает строки в виде списка.

Пример чтения CSV

with open('output.csv', mode='r') as file:
    reader = csv.reader(file)
    for row in reader:
        print(row)

Используйте csv.reader для правильного считывания данных из таблицы.


Функции для работы с массивами

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

Пример функции

Функция для добавления новой записи в массив:

def add_record(array, record):
    array.append(record)

data = [["ID", "Name", "Age"]]
add_record(data, [1, "Alex", 25])
add_record(data, [2, "Maria", 30])

print(data)

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


Полный пример: Добавление и запись

Объединим всё вместе:

import csv

def add_record(array, record):
    array.append(record)

data = [["ID", "Name", "Age"]]

# Добавление записей
add_record(data, [1, "Alex", 25])
add_record(data, [2, "Maria", 30])

# Запись в файл
with open('output.csv', mode='w', newline='') as file:
    writer = csv.writer(file)
    writer.writerows(data)

Итоги

Основные шаги:

1

Создание или заполнение массива

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

2

Добавление записей с помощью функций

Используйте функции для добавления новых записей в массив. Это улучшает читаемость кода и упрощает обработку данных.

3

Сохранение данных в табличный файл

Сохраните массив в формате табличного файла (например, CSV), чтобы данные стали удобными для хранения и анализа.

Советы:

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

  • CSV-файлы просты, но требуют внимательности при работе с разделителями.

Справочник команд

1. open(filename, mode)

Открывает файл для чтения или записи.

  • Параметры:

    • filename — путь к файлу.

    • mode — режим работы с файлом:

      • "r" — открыть для чтения (по умолчанию).

      • "w" — открыть для записи (перезапишет файл, если существует).

      • "a" — открыть для добавления (добавляет в конец файла).

      • "b" — бинарный режим (для работы с бинарными файлами).

    Пример:

    file = open('data.txt', 'r')

2. read()

Читает все содержимое файла.

  • Возвращает: строку, содержащую весь текст файла.

    Пример:

    with open('data.txt', 'r') as file:
        content = file.read()
        print(content)

3. readlines()

Читает все строки файла и возвращает их как список.

  • Возвращает: список строк, каждая строка — элемент списка.

    Пример:

    with open('data.txt', 'r') as file:
        lines = file.readlines()
        print(lines)

4. write(data)

Записывает строку или данные в файл. Если файл открыт в режиме "w" или "a", данные будут записаны.

  • Параметры: data — данные, которые нужно записать (строка).

    Пример:

    with open('data.txt', 'w') as file:
        file.write("Hello, world!")

5. writelines(lines)

Записывает несколько строк в файл. Каждая строка — элемент списка.

  • Параметры: lines — список строк, которые нужно записать.

    Пример:

    lines = ["Line 1\n", "Line 2\n", "Line 3\n"]
    with open('data.txt', 'w') as file:
        file.writelines(lines)

6. close()

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

Пример:

file = open('data.txt', 'r')
content = file.read()
file.close()

Справочник команд для работы с массивами

1. append()

Добавляет элемент в конец списка.

  • Параметры: элемент, который добавляется в список.

    Пример:

    data = [1, 2, 3]
    data.append(4)
    print(data)  # [1, 2, 3, 4]

2. extend()

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

  • Параметры: список, элементы которого будут добавлены.

    Пример:

    data = [1, 2, 3]
    data.extend([4, 5])
    print(data)  # [1, 2, 3, 4, 5]

3. insert()

Вставляет элемент в заданную позицию в списке.

  • Параметры:

    • Индекс, куда вставляется элемент.

    • Элемент для вставки.

    Пример:

    data = [1, 3, 4]
    data.insert(1, 2)  # Вставляем 2 на второй индекс
    print(data)  # [1, 2, 3, 4]

4. remove()

Удаляет первый встретившийся элемент с указанным значением.

  • Параметры: значение элемента, который нужно удалить.

    Пример:

    data = [1, 2, 3, 4]
    data.remove(3)
    print(data)  # [1, 2, 4]

5. pop()

Удаляет элемент по индексу и возвращает его.

  • Параметры: индекс элемента для удаления (по умолчанию удаляет последний элемент).

    Пример:

    data = [1, 2, 3, 4]
    last_item = data.pop()
    print(last_item)  # 4
    print(data)  # [1, 2, 3]

6. index()

Возвращает индекс первого вхождения указанного элемента.

  • Параметры: значение элемента, для которого нужно найти индекс.

    Пример:

    data = [1, 2, 3, 4]
    index = data.index(3)
    print(index)  # 2

7. sort()

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

  • Параметры: необязательные параметры для изменения порядка сортировки:

    • reverse=True — сортировка по убыванию.

    Пример:

    data = [4, 2, 1, 3]
    data.sort()
    print(data)  # [1, 2, 3, 4]

8. reverse()

Изменяет порядок элементов списка на противоположный.

  • Без параметров.

    Пример:

    data = [1, 2, 3]
    data.reverse()
    print(data)  # [3, 2, 1]

9. clear()

Удаляет все элементы из списка.

  • Без параметров.

    Пример:

    data = [1, 2, 3]
    data.clear()
    print(data)  # []

10. copy()

Создаёт поверхностную копию списка.

  • Возвращает: новый список, который содержит те же элементы, что и исходный.

    Пример:

    data = [1, 2, 3]
    data_copy = data.copy()
    print(data_copy)  # [1, 2, 3]
PreviousРабота с файламиNextМеню баз данных

Last updated 6 months ago