Skip to main content

Python Wrapper ConTree: Optimal Decision Trees for Continuous Feature Data

Project description

CMake build Pip install

ConTree: Optimal Classification Trees for Continuous Feature Data

Cătălin E. Briţa, Jacobus G. M. van der Linden (e-mail), Emir Demirović - Delft University of Technology

ConTree computes optimal binary classification trees on datasets with continuous features using dynamic programming with branch-and-bound.

If you use ConTree, please cite our paper:

  • Briţa, Cătălin E., Jacobus G. M. van der Linden, and Emir Demirović. "Optimal Classification Trees for Continuous Feature Data Using Dynamic Programming with Branch-and-Bound." In Proceedings of AAAI-25 (2025). pdf

Python usage

Install from PyPi

The pycontree python package can be installed from PyPi using pip:

pip install pycontree

Install from source using pip

The pycontree python package can be installed from source as follows:

git clone https://github.com/ConSol-Lab/contree.git
cd contree
pip install . 

Example usage

pycontree can be used, for example, as follows:

from pycontree import ConTree
import pandas as pd
from sklearn.metrics import accuracy_score

df = pd.read_csv("datasets/bank.txt", sep=" ", header=None)

X = df[df.columns[1:]]
y = df[0]

contree = ConTree(max_depth=3)
contree.fit(X, y)

ypred = contree.predict(X)
print("Accuracy: " , accuracy_score(y, ypred))

See the examples folder for a number of example usages.

Note that some of the examples require the installation of extra python packages:

pip install matplotlib seaborn graphviz

Graphviz additionaly requires another instalation of a binary. See their website.

C++ usage

Compiling

The code can be compiled on Windows or Linux by using cmake. For Windows users, cmake support can be installed as an extension of Visual Studio and then this repository can be imported as a CMake project.

For Linux users, they can use the following commands:

cd code
mkdir build
cd build
cmake ..
cmake --build .

The compiler must support the C++17 standard

Running

After ConTree is built, the following command can be used (for example):

./ConTree -file ../datasets/bank.txt -max-depth 3

Run the program without any parameters to see a full list of the available parameters.

Parameters

ConTree can be configured by the following parameters:

  • max_depth : The maximum depth of the tree. Note that a tree of depth zero has a single leaf node. A tree of depth one has one branching node and two leaf nodes.
  • complexity_cost : The cost of adding of adding a branching node (between 0 and 1).
  • max_gap : The maximum permissible gap to the optimal solution.
  • max_gap_decay : Use this parameter, if you want to find solutions iteratively, with each iteration decreasing the max_gap by multiplying it with max_gap_decay.
  • time_limit : The run time limit in seconds. If the time limit is exceeded a possibly non-optimal tree is returned.
  • sort_gini : If true, the features are sorted by gini impurity.
  • use_upper_bound : Enables or disables the use of upper bounds.
  • verbose : Enable or disable verbose output.

Miscellaneous

ConTree assumes classification labels are in the range 0 ... n_labels - 1. Not meeting this assumption may influence the algorithm's performance. Use sklearn's LabelEncoder to prevent this.

Related Work

This work is follow up on our previous research:

  • Demirović, Emir, et al. "Murtree: Optimal decision trees via dynamic programming and search." Journal of Machine Learning Research 23.26 (2022): 1-47. pdf / source
  • Van der Linden, Jacobus G. M., Mathijs M. de Weerdt, and Emir Demirović. "Necessary and Sufficient Conditions for Optimal Decision Trees using Dynamic Programming." In Advances in Neural Information Processing Systems (2023). pdf / source

Other related work:

  • Hu, Xiyang, Cynthia Rudin, and Margo Seltzer. "Optimal sparse decision trees." In Advances in Neural Information Processing Systems (2019). pdf / source
  • Lin, Jimmy, et al. "Generalized and scalable optimal sparse decision trees." In International Conference on Machine Learning (2020). pdf / source
  • Aglin, Gaël, Siegfried Nijssen, and Pierre Schaus. "Learning optimal decision trees using caching branch-and-bound search." In Proceedings of the AAAI conference on artificial intelligence (2020). pdf / source
  • Mazumder, Rahul, Xiang Meng, and Haoyue Wang. "Quant-BnB: A scalable branch-and-bound method for optimal decision trees with continuous features." In International Conference on Machine Learning (2022). pdf / source
  • Kiossou, Harold, Pierre Schaus, and Siegfried Nijssen. "Anytime Optimal Decision Tree Learning with Continuous Features." arXiv preprint arXiv:2601.14765 (2026). pdf / source

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

pycontree-1.0.8.tar.gz (39.7 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

pycontree-1.0.8-cp312-cp312-win_amd64.whl (148.2 kB view details)

Uploaded CPython 3.12Windows x86-64

pycontree-1.0.8-cp312-cp312-win32.whl (119.5 kB view details)

Uploaded CPython 3.12Windows x86

pycontree-1.0.8-cp312-cp312-musllinux_1_1_x86_64.whl (742.9 kB view details)

Uploaded CPython 3.12musllinux: musl 1.1+ x86-64

pycontree-1.0.8-cp312-cp312-musllinux_1_1_i686.whl (805.9 kB view details)

Uploaded CPython 3.12musllinux: musl 1.1+ i686

pycontree-1.0.8-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (234.5 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

pycontree-1.0.8-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl (248.0 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ i686

pycontree-1.0.8-cp312-cp312-macosx_11_0_arm64.whl (177.0 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pycontree-1.0.8-cp312-cp312-macosx_10_9_universal2.whl (351.3 kB view details)

Uploaded CPython 3.12macOS 10.9+ universal2 (ARM64, x86-64)

pycontree-1.0.8-cp311-cp311-win_amd64.whl (145.5 kB view details)

Uploaded CPython 3.11Windows x86-64

pycontree-1.0.8-cp311-cp311-win32.whl (118.7 kB view details)

Uploaded CPython 3.11Windows x86

pycontree-1.0.8-cp311-cp311-musllinux_1_1_x86_64.whl (739.8 kB view details)

Uploaded CPython 3.11musllinux: musl 1.1+ x86-64

pycontree-1.0.8-cp311-cp311-musllinux_1_1_i686.whl (805.7 kB view details)

Uploaded CPython 3.11musllinux: musl 1.1+ i686

pycontree-1.0.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (232.9 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

pycontree-1.0.8-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl (245.8 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ i686

pycontree-1.0.8-cp311-cp311-macosx_11_0_arm64.whl (176.0 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pycontree-1.0.8-cp311-cp311-macosx_10_9_universal2.whl (347.7 kB view details)

Uploaded CPython 3.11macOS 10.9+ universal2 (ARM64, x86-64)

pycontree-1.0.8-cp310-cp310-win_amd64.whl (144.5 kB view details)

Uploaded CPython 3.10Windows x86-64

pycontree-1.0.8-cp310-cp310-win32.whl (117.9 kB view details)

Uploaded CPython 3.10Windows x86

pycontree-1.0.8-cp310-cp310-musllinux_1_1_x86_64.whl (738.7 kB view details)

Uploaded CPython 3.10musllinux: musl 1.1+ x86-64

pycontree-1.0.8-cp310-cp310-musllinux_1_1_i686.whl (804.9 kB view details)

Uploaded CPython 3.10musllinux: musl 1.1+ i686

pycontree-1.0.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (232.0 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

pycontree-1.0.8-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl (244.6 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ i686

pycontree-1.0.8-cp310-cp310-macosx_11_0_arm64.whl (175.1 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

pycontree-1.0.8-cp310-cp310-macosx_10_9_universal2.whl (345.8 kB view details)

Uploaded CPython 3.10macOS 10.9+ universal2 (ARM64, x86-64)

File details

Details for the file pycontree-1.0.8.tar.gz.

File metadata

  • Download URL: pycontree-1.0.8.tar.gz
  • Upload date:
  • Size: 39.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pycontree-1.0.8.tar.gz
Algorithm Hash digest
SHA256 e977b092544ff7642693887b7784f5d6ca54386b6c6af995a849d968836dcf7a
MD5 e787936013db3f3f7ad57f2be934c594
BLAKE2b-256 82aa03615084f9533938b8699d37f186c81509d80e65d04fbddd9ce564d4d993

See more details on using hashes here.

File details

Details for the file pycontree-1.0.8-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: pycontree-1.0.8-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 148.2 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pycontree-1.0.8-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 64dd28562d0b1bbb770fa1a37151ca6895ca4a03c50c3a36b69ffb700654cc6a
MD5 e90502d8db5a2fab180272239442089d
BLAKE2b-256 80a82c27063bcbfef178a1e426c40c0123c7a72964e286e1097a3757a8b33f83

See more details on using hashes here.

File details

Details for the file pycontree-1.0.8-cp312-cp312-win32.whl.

File metadata

  • Download URL: pycontree-1.0.8-cp312-cp312-win32.whl
  • Upload date:
  • Size: 119.5 kB
  • Tags: CPython 3.12, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pycontree-1.0.8-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 1e7305d9725e87abfaa15c2bba08f80bd3379ddb10ba16deca04705df83fced4
MD5 18866302c00a36b2ec2dcff6dee6d8b2
BLAKE2b-256 72a0b9a9a33751de785959e5081ba68efe43d6bf96620eac47d28900c5f9290d

See more details on using hashes here.

File details

Details for the file pycontree-1.0.8-cp312-cp312-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for pycontree-1.0.8-cp312-cp312-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 15fd30cd865e5179c4ef82c73225c1eb519b896c5fb6187276317f8d939fcc78
MD5 9eb969dec6e2da32c7620923acd167d3
BLAKE2b-256 452fb8be715df4416be54fcb5745f48bc194a6ac205f2c246bc9e2b8e92c41c1

See more details on using hashes here.

File details

Details for the file pycontree-1.0.8-cp312-cp312-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for pycontree-1.0.8-cp312-cp312-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 2897eac08c82b23244524c757a539d3ca8f25ae73abce8c32f0d76e8c23b29a1
MD5 c912aa1a6ae506e296409ad5f928fd2f
BLAKE2b-256 a5cf2857fde7be6d29671026303d0f3c98c441fff388c6277aeebb9a9844a021

See more details on using hashes here.

File details

Details for the file pycontree-1.0.8-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pycontree-1.0.8-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e16a7ea882cab08add52f17df848249552e90b81e530996abf1b5e348ee5a020
MD5 99b407bc23d62aa4e1aa233a5f400475
BLAKE2b-256 b1b45af060b612b5a29c0fa39257f8f914123c7a4013f90c7aae63f6270a392e

See more details on using hashes here.

File details

Details for the file pycontree-1.0.8-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for pycontree-1.0.8-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 1cbedd341a0da66403916393bb9c7de51e724e2c98e7df3dc5a6a0fc84322ab3
MD5 ea4516086d54bf088e720adf1df82583
BLAKE2b-256 91d29b0e50b7a0484ac36e9596253cee7602a16f97bbc49d9df2f58ad90bbd36

See more details on using hashes here.

File details

Details for the file pycontree-1.0.8-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pycontree-1.0.8-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f8f6ee72581523d7216ba0fae6e2174e273c942e5ba4e058671147f58f1dd3e3
MD5 ca07941428b9159379b4aea2be6cf499
BLAKE2b-256 119477e5b86f9288559f3079ce89d907c72e6f7fb16267e287ba3794058cf61a

See more details on using hashes here.

File details

Details for the file pycontree-1.0.8-cp312-cp312-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for pycontree-1.0.8-cp312-cp312-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 08212ee963d753b41638402c5de64592565fd0bea0e6642c755a3ae52cdaf067
MD5 f82932b42551c90b9f25237f95c8b25d
BLAKE2b-256 01411ce1c29bf5f03c974af0154bfc94f92931fe5c03314167c2fd6163a7b258

See more details on using hashes here.

File details

Details for the file pycontree-1.0.8-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: pycontree-1.0.8-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 145.5 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pycontree-1.0.8-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 912a6081c716a082e8e0e3dc5af305aafb7348d64bbe82ce86d729e631edc855
MD5 f1141b860bb609653088d1bdaf4e7d13
BLAKE2b-256 501bd61a8caed16186698f5a1e910e871644bb6c7e6e27bd62234f1624bb1efb

See more details on using hashes here.

File details

Details for the file pycontree-1.0.8-cp311-cp311-win32.whl.

File metadata

  • Download URL: pycontree-1.0.8-cp311-cp311-win32.whl
  • Upload date:
  • Size: 118.7 kB
  • Tags: CPython 3.11, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pycontree-1.0.8-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 34365588213d18f5e3154f27988e159550c1e6c9d77b48e5d8d0bb173c2a53f5
MD5 89f49c84e6f54b35c5207ea86b9e1f84
BLAKE2b-256 037926514f1647885b0cac0e8e06c5fd065467b8fc6c289063125cd36e802792

See more details on using hashes here.

File details

Details for the file pycontree-1.0.8-cp311-cp311-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for pycontree-1.0.8-cp311-cp311-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 279bed8d222fc36484775563651b5bd91c555b62389f4f57cbf583cff6e40818
MD5 aaaebfee687817603334d1ea6782595f
BLAKE2b-256 34db4fad574ddf8a78a03c4b949a8ab888aafabeefb336dfd3e8779c8fcfe8ca

See more details on using hashes here.

File details

Details for the file pycontree-1.0.8-cp311-cp311-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for pycontree-1.0.8-cp311-cp311-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 137cd2813ae5f1470ea9ce84b803bbba4e73f78daed79502fd00d50217fb30a0
MD5 3045da118d5f50327e157c9e4f4a4e95
BLAKE2b-256 78dd2220f6487876e905bed95f43b25e1ef7c3cb5a4428e36f400b85c4fc5090

See more details on using hashes here.

File details

Details for the file pycontree-1.0.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pycontree-1.0.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1877e2a5349c6e816c21ce6655c3e7c278015de714244ba630fca2e6a7dd3a84
MD5 d2114f347a8b63d1fc32abb60732c042
BLAKE2b-256 3938fdb9e6faf9cee818e38cf6ae066bf223f24872ce0666906a92fb5bcc50c7

See more details on using hashes here.

File details

Details for the file pycontree-1.0.8-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for pycontree-1.0.8-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 2337da87c2230e184a875b727b9719db9afbde34b99dc45a3d32e05cd0b28f4b
MD5 df18fc9cc5fc05a81028376946bbceaf
BLAKE2b-256 3a6c0575be2b205d8250aae0d334461d3da493d9eff0000ddb5b08946b0b9fd4

See more details on using hashes here.

File details

Details for the file pycontree-1.0.8-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pycontree-1.0.8-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 eeff1e54e58f6c0add9a6efd8cf5b5ff5b4ca3d80007af46a676e504765a525b
MD5 5063bfd659c5756e808678d545c28a59
BLAKE2b-256 cbb0ff109be8972fae78989430b48fba5afcf0dcbff95d894d2848e558b3265d

See more details on using hashes here.

File details

Details for the file pycontree-1.0.8-cp311-cp311-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for pycontree-1.0.8-cp311-cp311-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 0bfcc36e3d046cfde81e96319aca8d38fa8afe4966fc3a4a6b5a67ea4479877e
MD5 c2098024a2442951e1f89c3df1b2daba
BLAKE2b-256 bcf17cf169888c5e6e235fe27778b082a8305e080e25c441d8a5d031fafb83e4

See more details on using hashes here.

File details

Details for the file pycontree-1.0.8-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: pycontree-1.0.8-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 144.5 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pycontree-1.0.8-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 91961c6256174a7c9608692bf4c8755ed9a5a309ebcc92815299b597064efbe1
MD5 e90ca228c1c5d8cb63c53d663eaec23a
BLAKE2b-256 dd87b41eb50174e494b9391d14bfcaf3eeb136afd9c692c3cbb84c7f4b4684fe

See more details on using hashes here.

File details

Details for the file pycontree-1.0.8-cp310-cp310-win32.whl.

File metadata

  • Download URL: pycontree-1.0.8-cp310-cp310-win32.whl
  • Upload date:
  • Size: 117.9 kB
  • Tags: CPython 3.10, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pycontree-1.0.8-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 9b12bde936edb9427c684296fbbbb01238d4d5defa521e136b417c5ff2f8af1c
MD5 f726b297be163815fd7c60b2942070cb
BLAKE2b-256 790c6f2d149fc6352ce0e03582db7cf8c25fecc771d52487198eb4e030ea824a

See more details on using hashes here.

File details

Details for the file pycontree-1.0.8-cp310-cp310-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for pycontree-1.0.8-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 a94be1ff4deb91f07b49e905ebe594d507057909a79d84a249a6a21ceb47897f
MD5 839814b49c11b5e6d1118f9c1900a0a9
BLAKE2b-256 36b4a2d9147be07d6cea4e5e87f2bb14456c0b5c7e8b3f7e5653d06b4c3bf9a5

See more details on using hashes here.

File details

Details for the file pycontree-1.0.8-cp310-cp310-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for pycontree-1.0.8-cp310-cp310-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 c48dd56b4c5eb0f51df29cfb72c3f373f1cc686e92b80aec5c399007ff04b709
MD5 83dc20bf6ad99f948e64e0b3fdc8036b
BLAKE2b-256 c51bc4cf1ba7d612f992c044c952226560711b897d1c0c159c43e69057f2aac0

See more details on using hashes here.

File details

Details for the file pycontree-1.0.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pycontree-1.0.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b67635ad48f1b1fb423ada575568618589ede27b1f8cf08b81ecf692d7ea1d87
MD5 45ff01d7da00157058657970c1fc68b2
BLAKE2b-256 29b5e4a8648bbff87f21c1d952a1847fe589c8263e9109572fe4f29ec05d33d2

See more details on using hashes here.

File details

Details for the file pycontree-1.0.8-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for pycontree-1.0.8-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 35717f2e635c1cd0921e2f381053308d44c160329ee1f78de3dc079fe4151295
MD5 f537e3bf8803afab3aabf1c03ca85034
BLAKE2b-256 505bc8851bb286469ed9996c1e0f916037db83e1a2caf099f67f54fa3debb21d

See more details on using hashes here.

File details

Details for the file pycontree-1.0.8-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pycontree-1.0.8-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1367e3497b57d92e2a1254aaf6b2a9545a89e17fc68680c52839978d44107229
MD5 8a51f1245f5c9e370b145e0ee2aea18d
BLAKE2b-256 130d5b4488775088af2e18434bcb6a7bcb10771a27c4e478f92f5ba8f173da5d

See more details on using hashes here.

File details

Details for the file pycontree-1.0.8-cp310-cp310-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for pycontree-1.0.8-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 b1cb84a4f61c310cd2e81a8a3d71a8ad33a84ccff9731778d283dcfc86c710de
MD5 b1cc7c6eb96f53c204f4ae3cd78e46da
BLAKE2b-256 7b0c0a3dbbc676fe10cd522cb05cea0a180d259202b45cf748dad907a3df204f

See more details on using hashes here.

Supported by

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