pyexcel-io - Let you focus on data, instead of file formats
Fonts, colors and charts are not supported.
pyexcel-io provides one application programming interface(API) to read and write the data in excel format, import the data into and export the data from database. It provides support for csv(z) format, django database and sqlalchemy supported databases. Its supported file formats are extended to cover "xls", "xlsx", "ods" by the following extensions:
|Package name||Supported file formats||Dependencies||Python versions|
|pyexcel-io||csv, csvz , tsv, tsvz ||2.6, 2.7, 3.3, 3.4, 3.5, 3.6 pypy|
|pyexcel-xls||xls, xlsx(read only), xlsm(read only)||xlrd, xlwt||same as above|
|pyexcel-xlsx||xlsx||openpyxl||same as above|
|pyexcel-xlsxw||xlsx(write only)||XlsxWriter||same as above|
|pyexcel-ods3||ods||ezodf, lxml||2.6, 2.7, 3.3, 3.4 3.5, 3.6|
|pyexcel-ods||ods||odfpy||same as above|
|||zipped csv file|
|||zipped tsv file|
If you need to manipulate the data, you might do it yourself or use its brother library pyexcel .
If you would like to extend it, you may use it to write your own extension to handle a specific file format.
You can install it via pip:
$ pip install pyexcel-io
or clone it and install it:
$ git clone http://github.com/pyexcel/pyexcel-io.git $ cd pyexcel-io $ python setup.py install
Development steps for code changes
- git clone https://github.com/pyexcel/pyexcel-io.git
- cd pyexcel-io
Upgrade your setup tools and pip. They are needed for development and testing only:
- pip install --upgrade setuptools "pip==7.1"
Then install relevant development requirements:
- pip install -r rnd_requirements.txt # if such a file exists
- pip install -r requirements.txt
- pip install -r tests/requirements.txt
In order to update test environment, and documentation, additional setps are required:
- pip install moban
- git clone https://github.com/pyexcel/pyexcel-commons.git commons
- make your changes in .moban.d directory, then issue command moban
What is rnd_requirements.txt
Usually, it is created when a dependent library is not released. Once the dependecy is installed(will be released), the future version of the dependency in the requirements.txt will be valid.
What is pyexcel-commons
Many information that are shared across pyexcel projects, such as: this developer guide, license info, etc. are stored in pyexcel-commons project.
What is .moban.d
.moban.d stores the specific meta data for the library.
How to test your contribution
Although nose and doctest are both used in code testing, it is adviable that unit tests are put in tests. doctest is incorporated only to make sure the code examples in documentation remain valid across different development releases.
On Linux/Unix systems, please launch your tests like this:
$ make test
On Windows systems, please issue this command:
New BSD License