Tôi đã cố gắng chuyển đổi các công thức trong một sổ làm việc Excel sang các chức năng hoặc câu lệnh Python tương đương trong tập lệnh Python.
Ở nơi làm việc của tôi, chúng tôi có sách bài tập Excel cũ mà chúng tôi sử dụng để tính toán trong các quy trình kỹ thuật (như thiết kế các cấu trúc bê tông). Những tính toán này liên quan đến nhiều công thức và tài liệu tham khảo giữa các công thức. Tôi muốn chuyển đổi các công thức trong các sổ làm việc đó thành các chức năng Python 'tương đương', kết quả là các sổ làm việc Excel đó sau đó được thay thế bằng các tập lệnh Python (vì lý do liên quan đến khả năng duy trì các tài liệu kỹ thuật và xác thực quy trình làm việc này).
Để chứng minh nguyên tắc với một ví dụ cơ bản.
Nếu có một sổ làm việc excel với một tờ (name = sheet1)
value in cell A1 = 2 value in cell A2 = 3 value in cell A3 = '=A1+A2' = 5Hàm Python này sẽ là kết quả mong muốn:
def A3(A1,A2): return A1+A2Cách sử dụng biến toàn cầu
A3 = 0 def A3(A1,A3): A3 = A1 + A3Một ví dụ phức tạp khác liên quan đến một tuyên bố có điều kiện:
Sổ làm việc Excel với hai tờ ('Sheet1' và 'Sheet2'))
Sheet1!A1 = 2 Sheet1!A2 = 3 Sheet1!A3 = False Sheet2!A1 = '=IF(Sheet1!A3 == True; Sheet1!A1+Sheet1!A2; Sheet1!A1*Sheet1!2)' = 6Trong Python sẽ trở thành (hoặc một cái gì đó tương tự):
def Sheet2!A1(Sheet1!A1,Sheet1!A2): if Sheet!A3 == True: return Sheet1!A1+Sheet1!A2 else: return Sheet1!A1 * Sheet1!A2Tôi đã thử sử dụng openpyxl (để đọc sách bài tập) kết hợp với các công thức (mô -đun) và pycel, nhưng tôi không thể tìm ra cách chuyển đổi như vậy.
Nếu tôi hiểu chính xác gói công thức và gói Pycel có thể xác định và chuyển đổi các hàm Excel (thành Python phải không?). Hoặc có thể họ chỉ làm như vậy trong thời gian chạy?
Cụ thể tôi muốn biết làm thế nào, về cơ bản, biên dịch các công thức Excel với các hàm Python.
Câu hỏi chung: Có cách nào để tự động hóa việc chuyển đổi sổ làm việc Excel sang các tập lệnh Python tương đương không?
1.2.4
ngày2022-07-02 17:45:00
kho//github.com/vinci1it2000/formulas
pypi-repo//pypi.org/project/formulas/
tài liệu//formulas.readthedocs.io/
Wiki//github.com/vinci1it2000/formulas/wiki/
Tải xuống//github.com/vinci1it2000/formulas/releases/
quyên tặng//donorbox.org/formulas
Từ khóaExcel, công thức, trình thông dịch, trình biên dịch, công văn
nhà phát triểnVincenzo Arcidiacono@gmail.com>
EUPL 1.1+
Công thức là gì? ¶
Các công thức thực hiện một thông dịch viên cho các công thức Excel, trong đó phân tích cú pháp và biên dịch các biểu thức công thức excel. implements an interpreter for Excel formulas, which parses and compile Excel formulas expressions.
Hơn nữa, nó biên dịch các sổ làm việc Excel thành Python và thực thi mà không cần sử dụng máy chủ Excel COM. Do đó, Excel là không cần thiết.Excel is not needed.
Cài đặt¶
Để cài đặt nó sử dụng (với đặc quyền gốc):
Hoặc tải xuống phiên bản Git cuối cùng và sử dụng (với đặc quyền gốc):
$ python setup.py install
Cài đặt Extras¶
Một số chức năng bổ sung được bật cài đặt các tính năng bổ sung sau:
Excel: Cho phép biên dịch sổ làm việc Excel để Python và thực thi bằng cách sử dụng: ExcelModel.
Lô đất: Cho phép vẽ đồ thị công thức AST và mô hình Excel.
Để cài đặt các công thức và tất cả các tính năng bổ sung, làm:
$ pip install formulas[all]
Phiên bản phát triển Or
Để giúp thử nghiệm và phát triển các công thức, bạn có thể cài đặt phiên bản phát triển:
$ pip install //github.com/vinci1it2000/formulas/archive/dev.zip
Mục lục
- 1. Công thức là gì?
- 2. Cài đặt
- 2.1. Cài đặt các tính năng bổ sung
- 2.2. Phiên bản phát triển
- 3. Ví dụ cơ bản
- 3.1. Công thức phân tích cú pháp
- 3.2. Sổ làm việc Excel
- 3.2.1. Xuất khẩu/nhập khẩu json
- 3.3. Chức năng tùy chỉnh
- 4. Di chuyển tiếp theo
- 5. Đóng góp cho các công thức
- 5.1. Sao chép kho lưu trữ
- 5.2. Cách thực hiện một chức năng mới
- 5.3. Cách mở yêu cầu kéo
- 6. Đóng góp
- 7. Tham chiếu API
- 8. Thay đổi
- 8.1. v1.2.4 (2022-07-02)
- 8.1.1. Feat
- 8.1.2. Sửa chữa
- 8.2. v1.2.3 (2022-05-10)
- 8.2.1. Feat
- 8.2.2. Sửa chữa
- 8.3. v1.2.2 (2022-01-22)
- 8.3.1. Sửa chữa
- 8.4. v1.2.1 (2022-01-21)
- 8.4.1. Feat
- 8.4.2. Sửa chữa
- 8,5. v1.2.0 (2021-12-23)
- 8.5.1. Feat
- 8.5.2. Sửa chữa
- 8.6. v1.1.1 (2021-10-13)
- 8.6.1. Feat
- 8.6.2. Sửa chữa
- 8.7. v1.1.0 (2021-02-16)
- 8.7.1. Feat
- 8.7.2. Sửa chữa
- 8.8. v1.0.0 (2020-03-12)
- 8.8.1. Feat
- 8.8.2. Sửa chữa
- 8,9. v0.4.0 (2019-08-31)
- 8.9.1. Feat
- 8.9.2. Sửa chữa
- 8.10. v0.3.0 (2019-04-24)
- 8.10.1. Feat
- 8.10.2. Sửa chữa
- 8.11. v0.2.0 (2018-12-11)
- 8.11.1. Feat
- 8.11.2. Sửa chữa
- 8.12. V0.1.4 (2018-10-19)
- 8.12.1. Sửa chữa
- 8.13. V0.1.3 (2018-10-09)
- 8.13.1. Feat
- 8.13.2. Sửa chữa
- 8.13.3. Khác
- 8.14. V0.1.2 (2018-09-12)
- 8.14.1. Feat
- 8.14.2. Sửa chữa
- 8.15. V0.1.1 (2018-09-11)
- 8.15.1. Feat
- 8.15.2. Sửa chữa
- 8.16. v0.1.0 (2018-07-20)
- 8.16.1. Feat
- 8.16.2. Sửa chữa
- 8.17. v0.0.10 (2018-06-05)
- 8.17.1. Feat
- 8.17.2. Sửa chữa
- 8.18. v0.0.9 (2018-05-28)
- 8.18.1. Feat
- 8.18.2. Sửa chữa
- 8.19. v0.0.8 (2018-05-23)
- 8.19.1. Feat
- 8.19.2. Sửa chữa
- 8.19.3. Khác
- 8.20. v0.0.7 (2017-07-20)
- 8.20.1. Feat
- 8.20.2. Sửa chữa
- 8.20.3. Khác
- 8.21. v0.0.6 (2017-05-31)
- 8.21.1. Sửa chữa
- 8.22. v0.0.5 (2017-05-04)
- 8.22.1. Sửa chữa
- 8,23. v0.0.4 (2017-02-10)
- 8.23.1. Sửa chữa
- 8.24. v0.0.3 (2017-02-09)
- 8.24.1. Sửa chữa
- 8,25. v0.0.2 (2017-02-08)
- 8.25.1. Sửa chữa
- 8.1. v1.2.4 (2022-07-02)
Chỉ số và bảng
Mục lục
Chỉ số mô -đun
Trang tìm kiếm