Skip to main content

A small library for conclusion table db

Project description

Библиотека my_table_db

Это библиотека для вывода в консоль таблицы из базы данных


Использование

Функция my_table_db

Принимает именованные аргументы (rows,name_arg1, name_arg2, ..., name_arg7) и их соответствующие значения (arg1, arg2, ..., arg7). Она форматирует эти входные данные в аккуратную строку с каждой парой имя-значение, разделенной символом |. Функция может обрабатывать различное количество аргументов, от одного до семи пар.

Параметры

  • name_arg1 до name_arg7: Опциональные строки, представляющие имена аргументов.
  • arg1 до arg7: Опциональные значения, соответствующие каждому имени.

Возвращаемое значение

Форматированная строка, выравнивающая предоставленные пары имя-значение в столбцы.


Функция my_table_db_full

Принимает именованные аргументы (rows, colum_name). Она выводит всю таблицу в консоль с использованием оригинальных названий столбцов, значения разделены символом |.


Установка

pip install my_table_db

Пример 1

Содержимое таблицы

id  Name    Salary
1   Alice   50000
2   Bob     60000

Код с использованием my_table_db_full

import psycopg2
from my_table_db import my_table_db_full

def fetch_data():
    conn = None
    try:
        conn = con = psycopg2.connect(
            dbname=...,
            user=...,
            password=...,
            host=...,
            port=...)
        cur = conn.cursor()
        cur.execute("SELECT * FROM employees")
        
        rows = cur.fetchall()   #Получаем все строки
        colum_name = [desc[0] for desc in cur.description]  #Получаем все названия колонок
        
        my_table_db_full(rows, colum_name)  #Выводим на экран всю табличку
        
        cur.close()
    except (Exception, psycopg2.DatabaseError) as error:
        print(error)
    finally:
        if conn is not None:
            conn.close()
            print()
            print("Database connection closed.")


fetch_data()

Вывод

id:    1    | Name:    Alice    | Salary:    50000
id:    2    | Name:    Bob      | Salary:    60000

Database connection closed.

Пример 2

Код с использованием my_table_db

import psycopg2
from my_table_db import my_table_db

def fetch_data():
    conn = None
    try:
        conn = con = psycopg2.connect(
            dbname=...,
            user=...,
            password=...,
            host=...,
            port=...)
        cur = conn.cursor()
        cur.execute("SELECT * FROM employees")
        
        rows = cur.fetchall()   #Получаем все строки
        for row in rows:
            my_table_db(rows,'id',row[0],'Name',row[1],'Salary',row[2])  #Выводим на экран табличку 
        
        cur.close()
    except (Exception, psycopg2.DatabaseError) as error:
        print(error)
    finally:
        if conn is not None:
            conn.close()
            print()
            print("Database connection closed.")


fetch_data()
id:    1    | Name:    Alice    | Salary:    50000
id:    2    | Name:    Bob      | Salary:    60000

Database connection closed.

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

my_table_db(rows,'Имя',row[1],'Зарплата',row[2])

И в этом случае вывелось бы:

Имя:    Alice    | Зарплата:    50000
Имя:    Bob      | Зарплата:    60000

Заключение

Библиотека my_table_db полезна для форматирования и отображения наборов пар имя-значение в структурированном и читаемом формате. Она может обрабатывать различное количество аргументов и гарантирует, что вывод останется выровненным и легко читаемым.


Автор

Автор: k0ng999

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

my_table_db-17.7.7.tar.gz (4.1 kB view details)

Uploaded Source

File details

Details for the file my_table_db-17.7.7.tar.gz.

File metadata

  • Download URL: my_table_db-17.7.7.tar.gz
  • Upload date:
  • Size: 4.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for my_table_db-17.7.7.tar.gz
Algorithm Hash digest
SHA256 b34a57791ec9c3c585ac157150c60c8af0f6d974ac22be5326072c51cbeb439e
MD5 1a42c551f2ad6c54491df02f37966089
BLAKE2b-256 e6c114eb9cec54c3e676bd55a5165ff85342dd038bc8f03973ad5badd593c3dc

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page