首页 > 编程知识 正文

python做值班表如何用Python 实现自动排班

时间:2023-05-04 04:41:25 阅读:238922 作者:409

展开yqddx

Known constraints

Fonts, colors and charts are not supported.

Installation

You can install it via pip:

$ pip install pyexcel-xls

or clone it and install it:

$ git clone hexcel-xls.git$ cd pyexcel-xls$ python setup.py install

Usage

As a standalone library

Write to an xls file

Here’s the sample code to write a dictionary to an xls file:

>>> from pyexcel_xls import save_data>>> data = OrderedDict() # from collections import OrderedDict>>> data.update({"Sheet 1": [[1, 2, 3], [4, 5, 6]]})>>> data.update({"Sheet 2": [["row 1", "row 2", "row 3"]]})>>> save_data("your_file.xls", data)

Read from an xls file

Here’s the sample code:

>>> from pyexcel_xls import get_data>>> data = get_data("your_file.xls")>>> import json>>> print(json.dumps(data)){"Sheet 1": [[1.0, 2.0, 3.0], [4.0, 5.0, 6.0]], "Sheet 2": [["row 1", "row 2", "row 3"]]}

Write an xls to memory

Here’s the sample code to write a dictionary to an xls file:

>>> from pyexcel_xls import save_data>>> data = OrderedDict()>>> data.update({"Sheet 1": [[1, 2, 3], [4, 5, 6]]})>>> data.update({"Sheet 2": [[7, 8, 9], [10, 11, 12]]})>>> io = StringIO()>>> save_data(io, data)>>> # do something with the io>>> # In reality, you might give it to your http response>>> # object for downloading

Read from an xls from memory

Continue from previous example:

>>> # This is just an illustration>>> # In reality, you might deal with xls file upload>>> # where you will read from requests.FILES['YOUR_XL_FILE']>>> data = get_data(io)>>> print(json.dumps(data)){"Sheet 1": [[1.0, 2.0, 3.0], [4.0, 5.0, 6.0]], "Sheet 2": [[7.0, 8.0, 9.0], [10.0, 11.0, 12.0]]}

As a pyexcel plugin

Import it in your file to enable this plugin:

from pyexcel.ext import xls

Please note only pyexcel version 0.0.4+ support this.

Reading from an xls file

Here is the sample code:

>>> import pyexcel as pe>>> from pyexcel.ext import xls>>> sheet = pe.get_book(file_name="your_file.xls")>>> sheetSheet Name: Sheet 1+---+---+---+|62616964757a686964616fe78988e69d8331333365633837 1 | 2 | 3 |+---+---+---+| 4 | 5 | 6 |+---+---+---+Sheet Name: Sheet 2+-------+-------+-------+| row 1 | row 2 | row 3 |+-------+-------+-------+

Writing to an xls file

Here is the sample code:

>>> sheet.save_as("another_file.xls")

Reading from a IO instance

You got to wrap the binary content with stream to get xls working:

>>> # This is just an illustration>>> # In reality, you might deal with xls file upload>>> # where you will read from requests.FILES['YOUR_XLS_FILE']>>> xlsfile = "another_file.xls">>> with open(xlsfile, "rb") as f:...     content = f.read()...     r = pe.get_book(file_type="xls", file_content=content)...     print(r)...Sheet Name: Sheet 1+---+---+---+| 1 | 2 | 3 |+---+---+---+| 4 | 5 | 6 |+---+---+---+Sheet Name: Sheet 2+-------+-------+-------+| row 1 | row 2 | row 3 |+-------+-------+-------+

Writing to a StringIO instance

You need to pass a StringIO instance to Writer:

>>> data = [...     [1, 2, 3],...     [4, 5, 6]... ]>>> io = StringIO()>>> sheet = pe.Sheet(data)>>> sheet.save_to_memory("xls", io)>>> # then do something with io>>> # In reality, you might give it to your http response>>> # object for downloading

License

New BSD License

Known IssuesIf a zero was typed in a DATE formatted field in xls, you will get “01/01/1900”.

If a zero was typed in a TIME formatted field in xls, you will get “00:00:00”.

Dependencies

xlrd

xlwt-future

pyexcel-io >= 0.0.4

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。