Metadata-Version: 2.1
Name: ezcsv
Version: 0.3
Summary: Functions to do obvious things with CSVs
Home-page: https://github.com/brandones/ezcsv
Author: Brandon Istenes
Author-email: brandonesbox@gmail.com
License: UNKNOWN
Project-URL: Source, https://github.com/brandones/ezcsv
Description: # EZCSV
        
        Some utility functions to do the obvious things you want to do with CSV files.
        
        `csv` is easy, this is EZ.
        
        Install it: `pip install ezcsv`
        
        Definitely works with Python 3+.
        
        It's on it's way towards compatability with Python 2.6+. 
        
        It's hard to say anything about it difinitively because there are no tests.
        
        Please see "Contributing" below.
        
        
        ## Reference
        
        #### `read_dicts(file_path)`
        
        Returns the data at `file_path` as a list of dicts.
        
        - **`file_path`** `string | Path`
        
        #### `read_lists(file_path)`
        
        Returns the data at `file_path` as a list of lists. Ignores blank lines.
        
        - **`file_path`** `string | Path`
           
        Example Usage:
        ```
        >>> from easycsv import csv_as_list
        >>> filepath = 'C:\\path\\to\\file.csv'
        >>> print(filepath)
        C:\path\to\file.csv
        >>> l = csv_as_list(filepath)
        >>> print(l[0])
        First,Line,Of,File,Prints,Here
        ```
        
        #### `write_dicts(data, csv_path, mkdir=False, silent_fail=False, fieldnames=None, encoding='utf-8', **kwargs)`
        
        Writes the input data to a CSV file
        
        Always produces a Unix-style CSV file, regardless of whether on
        Windows or not.
        
        - **`data`** `list[dict]`
        
           One dict per line. The first dict is expected to contain all of the
        keys that will form the header line, unless `fieldnames` is provided.
        - **`csv_path`** `string | Path`
        
           Should have a .csv extension. `mkdir` will malfunction if it doesn't.
        - **`mkdir`** `bool`
        
           If true, creates the directory tree leading up to `csv_path`, ignoring
        if directories already exist. Default: `False`
        - **`silent_fail`**: `bool`
        
            If `true`, causes the method to do nothing if `data` happens
        to be empty. Default: `False`
        - **`fieldnames`**: `list[str]`
        
            If set, provides the list of field names to be passed to `csv.DictWriter`.
        These are written as the header, regardless of what keys are present in
        the first dict in `data`. Default: `None`
        - **`encoding`**: `str`
        
            The encoding to write with. Default: 'utf-8'  
        
        - **`kwargs`**: `dict`
        
            Passed on to `csv.DictWriter`. Cannot include `fieldnames`.
        
        #### `write_lists(data, csv_path, mkdir=False)`
        
        Writes the input data to a CSV file
        
        Always produces a Unix-style CSV file, regardless of whether on
        Windows or not.
        
        - **`data`** `list[list]`
        
           - **`csv_path`** `string | Path`
        
        Should have a .csv extension. `mkdir` will malfunction if it doesn't.
        - **`mkdir`** `bool`
        
           If true, creates the directory tree leading up to `csv_path`, ignoring
        if directories already exist.
        
        
        ## Contributing
        
        This could really use some tests!
        
        Feel free to fork and open a pull request. Please, one pull request per
        functional change.
        
        
Platform: UNKNOWN
Description-Content-Type: text/markdown
