Skip to main content

Simple XLSX and CSV to dictionary converter

Project description

Tests codecov Upload Python Package PythonVersions Sourcery Black

sheet2dict

A simple XLSX/CSV to dictionary converter

Installing

To install the package from pip, first run:

python3 -m pip install --no-cache-dir sheet2dict

Required pip packages for sheet2doc: csv, openpyxl

Usage

This library has 2 main features: reading a spreadsheet files and converting them to array of python dictionaries.

- XLSX

Use xlsx_to_dict() method when converting form spreadsheets.
Supported file formats for spreadsheets are: .xlsx,.xlsm,.xltx,.xltm

# Import the library
from sheet2dict import Worksheet

# Create an object
ws = Worksheet()

# Convert 
ws.xlsx_to_dict(path='inventory.xlsx')

# object.headers() returns first row with the data in a spreadsheet 
print(ws.headers())

# object.sheet_items returns converted rows as dictionaries in the array 
print(ws.sheet_items)

You can parse data when worksheet is an object

# Import the library
from sheet2dict import Worksheet

# Example: read spreadsheet as object
path = 'inventory.xlsx'
xlsx_file = open(path, 'rb')
xlsx_file = BytesIO(xlsx_file.read())

# Parse spreadsheet from object
ws = Worksheet()
ws.xlsx_to_dict(path=xlsx_file)
print(ws.headers())

- CSV

Use csv_to_dict() method when converting form csv.
CSV is a format with many variations, better handle encodings and delimiters on user side and not within module itself.

# Import the library
from sheet2dict import Worksheet

# Create an object
ws = Worksheet()

# Read CSV file
csv_file = open('inventory.csv', 'r', encoding='utf-8-sig')

# Convert 
ws.csv_to_dict(csv_file=csv_file, delimiter=';')

# object.headers() returns first row with the data in a spreadsheet 
print(ws.headers())

# object.sheet_items returns converted rows as dictionaries in the array 
print(ws.sheet_items)

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

sheet2dict-0.0.4.tar.gz (3.7 kB view details)

Uploaded Source

Built Distribution

sheet2dict-0.0.4-py3-none-any.whl (5.7 kB view details)

Uploaded Python 3

File details

Details for the file sheet2dict-0.0.4.tar.gz.

File metadata

  • Download URL: sheet2dict-0.0.4.tar.gz
  • Upload date:
  • Size: 3.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.1

File hashes

Hashes for sheet2dict-0.0.4.tar.gz
Algorithm Hash digest
SHA256 fe2022e72060abb0ec43f5a58299e7b310ef5c38e7df0ff57bee7fc41d63b5a2
MD5 1d67cf43ab0d4965cee35a000603e685
BLAKE2b-256 e23f6ad890014719cd7ebd376e03a6ac5c1674b009a02e8f3eb5132348d77149

See more details on using hashes here.

File details

Details for the file sheet2dict-0.0.4-py3-none-any.whl.

File metadata

  • Download URL: sheet2dict-0.0.4-py3-none-any.whl
  • Upload date:
  • Size: 5.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.1

File hashes

Hashes for sheet2dict-0.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 fb3054f36ef8cfb4530ef307132a9e8fff7072fa64d1e6bc698259b8cfb3951a
MD5 122862f42a5a28830d32aafb6090c957
BLAKE2b-256 234bdba917103b3f64f96d8699bf7d6366f7f4cc6cd0f4f39600eb98b42e9bf5

See more details on using hashes here.

Supported by

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