ODPS Python SDK and data analysis framework
Project description
Elegent way to access ODPS API. Documentation
Installation
The quick way:
pip install pyodps[full]
If you don’t need to use Jupyter, just type
pip install pyodps
The dependencies will be installed automatically.
Or from source code (not recommended for production use):
$ virtualenv pyodps_env
$ source pyodps_env/bin/activate
$ pip install git+https://github.com/aliyun/aliyun-odps-python-sdk.git
Dependencies
Python (>=2.7), including Python 3+, pypy, Python 3.7 recommended
setuptools (>=3.0)
Run Tests
install pytest
copy conf/test.conf.template to odps/tests/test.conf, and fill it with your account
run pytest odps
Usage
>>> import os
>>> from odps import ODPS
>>> # Make sure environment variable ALIBABA_CLOUD_ACCESS_KEY_ID already set to Access Key ID of user
>>> # while environment variable ALIBABA_CLOUD_ACCESS_KEY_SECRET set to Access Key Secret of user.
>>> # Not recommended to hardcode Access Key ID or Access Key Secret in your code.
>>> o = ODPS(
>>> os.getenv('ALIBABA_CLOUD_ACCESS_KEY_ID'),
>>> os.getenv('ALIBABA_CLOUD_ACCESS_KEY_SECRET'),
>>> project='**your-project**',
>>> endpoint='**your-endpoint**',
>>> )
>>> dual = o.get_table('dual')
>>> dual.name
'dual'
>>> dual.table_schema
odps.Schema {
c_int_a bigint
c_int_b bigint
c_double_a double
c_double_b double
c_string_a string
c_string_b string
c_bool_a boolean
c_bool_b boolean
c_datetime_a datetime
c_datetime_b datetime
}
>>> dual.creation_time
datetime.datetime(2014, 6, 6, 13, 28, 24)
>>> dual.is_virtual_view
False
>>> dual.size
448
>>> dual.table_schema.columns
[<column c_int_a, type bigint>,
<column c_int_b, type bigint>,
<column c_double_a, type double>,
<column c_double_b, type double>,
<column c_string_a, type string>,
<column c_string_b, type string>,
<column c_bool_a, type boolean>,
<column c_bool_b, type boolean>,
<column c_datetime_a, type datetime>,
<column c_datetime_b, type datetime>]
DataFrame API
>>> from odps.df import DataFrame
>>> df = DataFrame(o.get_table('pyodps_iris'))
>>> df.dtypes
odps.Schema {
sepallength float64
sepalwidth float64
petallength float64
petalwidth float64
name string
}
>>> df.head(5)
|==========================================| 1 / 1 (100.00%) 0s
sepallength sepalwidth petallength petalwidth name
0 5.1 3.5 1.4 0.2 Iris-setosa
1 4.9 3.0 1.4 0.2 Iris-setosa
2 4.7 3.2 1.3 0.2 Iris-setosa
3 4.6 3.1 1.5 0.2 Iris-setosa
4 5.0 3.6 1.4 0.2 Iris-setosa
>>> df[df.sepalwidth > 3]['name', 'sepalwidth'].head(5)
|==========================================| 1 / 1 (100.00%) 12s
name sepalwidth
0 Iris-setosa 3.5
1 Iris-setosa 3.2
2 Iris-setosa 3.1
3 Iris-setosa 3.6
4 Iris-setosa 3.9
Command-line and IPython enhancement
In [1]: %load_ext odps In [2]: %enter Out[2]: <odps.inter.Room at 0x10fe0e450> In [3]: %sql select * from pyodps_iris limit 5 |==========================================| 1 / 1 (100.00%) 2s Out[3]: sepallength sepalwidth petallength petalwidth name 0 5.1 3.5 1.4 0.2 Iris-setosa 1 4.9 3.0 1.4 0.2 Iris-setosa 2 4.7 3.2 1.3 0.2 Iris-setosa 3 4.6 3.1 1.5 0.2 Iris-setosa 4 5.0 3.6 1.4 0.2 Iris-setosa
Python UDF Debugging Tool
#file: plus.py
from odps.udf import annotate
@annotate('bigint,bigint->bigint')
class Plus(object):
def evaluate(self, a, b):
return a + b
$ cat plus.input 1,1 3,2 $ pyou plus.Plus < plus.input 2 5
Contributing
For a development install, clone the repository and then install from source:
git clone https://github.com/aliyun/aliyun-odps-python-sdk.git cd pyodps pip install -r requirements.txt -e .
If you need to modify the frontend code, you need to install nodejs/npm. To build and install your frontend code, use
python setup.py build_js python setup.py install_js
License
Licensed under the Apache License 2.0
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Hashes for pyodps-0.12.0-cp312-cp312-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ee11256f34366ac8d8afb2e97c2cb8fbc50ea2ff35250a5d0e408a32cd94faa3 |
|
MD5 | 4aeeaad78819831cacfb9efa7da0f6f8 |
|
BLAKE2b-256 | ef2c9590bb124b3e450b37883ca6e8d1eb0be5468d7084ac1d74add8fcf12752 |
Hashes for pyodps-0.12.0-cp312-cp312-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bdc9c3c46b8ed22e605e94fa4b5dc61cebada040f754168c1758b402edd52493 |
|
MD5 | f562048f79bf1fafb2a5cb61d6383cb9 |
|
BLAKE2b-256 | 2b372e430346bb27d4b451346e24034aa5f913325644e3560d8802c0149447c0 |
Hashes for pyodps-0.12.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0968e5f98b52b85578acca4bbd9596ff026fa79c2e13193ad041e79db8059b1f |
|
MD5 | 8aae550cf20095010695b1cd8b8c1864 |
|
BLAKE2b-256 | d366a04d698722794b78830847fdae7f60dffbebba23473c37a790879fb1a560 |
Hashes for pyodps-0.12.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 199abd629936a94d3ea4b9d05837f8bf232d5d0dd609bfad8c787372883cf5be |
|
MD5 | 70200723539167884cd7de51bc310e8a |
|
BLAKE2b-256 | 74382384a8821b8fb206b3e627590f62da46dd6063fbbf1022b09365ef5070a7 |
Hashes for pyodps-0.12.0-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 75736aab7d54eca060a45dfd748f43b9d54c2af618d463656092cb138e949592 |
|
MD5 | 15c8fd1b7b87204080b720c6bb54a8ea |
|
BLAKE2b-256 | 8209d653efff0f82c09d18987d5b506465b9759d83caccc54abf6fed123eb152 |
Hashes for pyodps-0.12.0-cp312-cp312-macosx_10_9_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 733c7b84844c3760c6435ac6f548ea171544ea0d5e8635b2b9d983f675735ba5 |
|
MD5 | 8afcec84000c7251d9e4dc0d07c8ec3c |
|
BLAKE2b-256 | dee563859d8e924ba48ad7f731d6a45fb669bc2e9837bbdd19960a56a7591881 |
Hashes for pyodps-0.12.0-cp311-cp311-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 70949353efd5a7eb17dcfbd8953bbe8f10186007394ba9f272ab72b4cbd89588 |
|
MD5 | 9e74a56f3e3d97e6406a0aa6b87a296b |
|
BLAKE2b-256 | 099d3bbaba92ab54e020493f3608c6e810a7ede89529ea29268005796f936dd8 |
Hashes for pyodps-0.12.0-cp311-cp311-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cbf7b78ffdb0a4bab35595c1d45265df08dc09b22bf3ea21aa1e04954a636942 |
|
MD5 | 2e858a4d6bbbe74c5e134c1a2bb27a90 |
|
BLAKE2b-256 | ab0d8b92d1d8be02c3827a2f56896884b738d344c5c7d27deca5f0fc55a6d9e0 |
Hashes for pyodps-0.12.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cbfb7ce465e183941d2ff6ff0ea7217dd6ab882ddeb82654e86c2077f94db444 |
|
MD5 | b6e28a93092e480ac2fdc3ec9af66fd8 |
|
BLAKE2b-256 | 2123744a76f461a3ebf4a746b5154e3be0503ebbcfab6116df4b6cef756c60a7 |
Hashes for pyodps-0.12.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 18b8490a2f4356cce339fe6640ef3324e9f3c3581a032cd06aa6d853499bfde7 |
|
MD5 | 51bff12585015b84f9680b24f871db80 |
|
BLAKE2b-256 | 742802252caab563c7b5dfb20e1fc656fbf00fbd39ec571200bbae94fee23c0d |
Hashes for pyodps-0.12.0-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 51ba4f1428923e315f64445f1fc72e0e8b538f60c0ed07488b4e3c536e2635f0 |
|
MD5 | 92c6b8c0d0195caecfa5b40537159649 |
|
BLAKE2b-256 | 310a3424a93af7169a2ec8d0912a4b8b9e0d0780e9362970ae286fcde1be5982 |
Hashes for pyodps-0.12.0-cp311-cp311-macosx_10_9_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e131c0d1eea8c7ddd1e40da5e10981d6e0780afba53d13bc75d3030683a6c33d |
|
MD5 | f6368363c0278c183c322ff0115f5dce |
|
BLAKE2b-256 | 978f0f09314a115cc0a618d603ae7b2df999cc4283ef3d0dc622e31a8896ba58 |
Hashes for pyodps-0.12.0-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 130e9734eafee2e1ab15c94c40887bab73972c1b9436b351fac3f59e10817c31 |
|
MD5 | 421032ca6de7183b4babcfa120ae81fd |
|
BLAKE2b-256 | ddae1d33f7394fdf0dc375c849fbbe064096ab453801c52e22b20dc2c1aea270 |
Hashes for pyodps-0.12.0-cp310-cp310-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 15a3ffd2e87f2c2ff35323cb815c6bc7f4c6a8c1f0bcebee5799caec4413e1ce |
|
MD5 | 317344628565239121d36ac52e4cf53b |
|
BLAKE2b-256 | 4b3e90f80c70b576d1beaab8f10acb819d6b6c9689da12941e4a82597e95d4b4 |
Hashes for pyodps-0.12.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e507b03e5b07237b003031ea4570c8d10e92ec616937936cb6c4fe65da17ea39 |
|
MD5 | a3b35e18ae88fb33c5c2c14cdb4093de |
|
BLAKE2b-256 | 5b5ee1d90725e11e81ac92c6eaecebbe03c1351a5858bbde9711c2e0a5a7dda7 |
Hashes for pyodps-0.12.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 874d16d9172c828dfa635550d5dd1bb2da511c4093401c23bc74d61841e31502 |
|
MD5 | 6ddab52775122385e8bc5fd39592dd07 |
|
BLAKE2b-256 | a263e6f389d138a0c2d3150323c28b99bda565f2e47900acdfb159a7926e6fb3 |
Hashes for pyodps-0.12.0-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4edd5986a095b05e4bc41cddb0f45a4aac2938edd283b08ab2c38bbe1134bf48 |
|
MD5 | a05bd0d4173a6a73896e46f022d93ca8 |
|
BLAKE2b-256 | c82e5bc36f115413d94ecfea14713d80aaa5aa66e4c9057fc1da6b98d8b2471e |
Hashes for pyodps-0.12.0-cp310-cp310-macosx_10_9_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4181a8692245ef92bbacd78ba999bc01608a9b38fc2bc48441526d09ba1697a8 |
|
MD5 | 8effca0355c204869d762438b4f975c1 |
|
BLAKE2b-256 | e7cd76b23f6c465c37127570e972445880a49437fd295e7cbcbcf21f9aaa38bf |
Hashes for pyodps-0.12.0-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 279ae1068ac84fa9a3fad656a6e9a19f52de34fc05274b7a602a60521e24da08 |
|
MD5 | 329fec041c22d1bd9072cac7a77199b7 |
|
BLAKE2b-256 | bcfcf5a7acfec5032a650e2c18d953e0216bf40a8f2b6d0f19a4b7134ed2ade8 |
Hashes for pyodps-0.12.0-cp39-cp39-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0cb27f52da8a5d4e2a4f9dc45289a4723b38811e70c4c9c478ba1ab5ac07e34b |
|
MD5 | d826f06ee0e9669acf26a26a86222e30 |
|
BLAKE2b-256 | 79b86bbb2d7d1a073b8b0624aa0430ab01d3c5b5861e89298a7ce439c12efea1 |
Hashes for pyodps-0.12.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 36230879bd76409ef66550af77172d4334dfe9f86297cafe57a422687ad8da58 |
|
MD5 | 8865fc2b262575a2c3c842f16b1c8381 |
|
BLAKE2b-256 | 70fc5c37118a564daa23a90927585ecd23b3da4c55f9298489900042bd59b8a3 |
Hashes for pyodps-0.12.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8b8fd404d5a7a808674da1b413669d10c6650d0489842035064f1dab86c888bf |
|
MD5 | 24e89063b3b40ff6797792318755091c |
|
BLAKE2b-256 | 4899a4b1c486f54282ab59683d7826ae79bce9085f694d9861220640f6e3ed74 |
Hashes for pyodps-0.12.0-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ae4c0d5f6d9b3c1f23d6e21ffd180f5c3b854822c30384cfe31aa62dac429b8c |
|
MD5 | c7241df62c4095e3bf04beb351f8f8fd |
|
BLAKE2b-256 | e72abc40bd84ce27f7408e75606aa894b28e55d26d04a82141fbf1acb32d7370 |
Hashes for pyodps-0.12.0-cp39-cp39-macosx_10_9_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d0fdf97ccef927bd30c502d1cd9f87aa9fa4d29901acce49a4019b9421e19381 |
|
MD5 | 5f56b7c3214c4943ebeb33956195c9c5 |
|
BLAKE2b-256 | 820c5da197b2ad0c97f76dbfaba5513f36417d3a31c90216f427e3527107d79c |
Hashes for pyodps-0.12.0-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2e923cfcdecb01d4a75ae24549ba51d9db194be6f045885c4e79350df2e00c66 |
|
MD5 | d6cbe618a2cd29d648e4bbbc4f14a3b8 |
|
BLAKE2b-256 | b74194fca43130aa6dedca1f57737aaa4c59befde37133af968ffac14efbfc12 |
Hashes for pyodps-0.12.0-cp38-cp38-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 35fe81a4ca7ac6d2fd98c2f0d2348094673259789832ffc6d66e65594790f416 |
|
MD5 | 3a51a44260dab90d7981712aff31b3f8 |
|
BLAKE2b-256 | 3fbdbee34ed98f142d39762abedaad12cdb9b07e3e92d92afd50a32d75e0d3f0 |
Hashes for pyodps-0.12.0-cp38-cp38-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f52b6b1ee374abd288e9e0b85eda0496519823259f59a355af96bade4b2426dc |
|
MD5 | fd8b063b8a6845d357142955c5a5c360 |
|
BLAKE2b-256 | 4fbd73db31175f4b54bc0e8e2b5e738fd9d75e76a0e92dd36e3148cd8cc8813e |
Hashes for pyodps-0.12.0-cp38-cp38-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 778d6c321df9e1b4b56dc822eb3d838a1703002ff24fa6aa64cf4473ba774e93 |
|
MD5 | 8d3865602d18a19f9747813ac3625db4 |
|
BLAKE2b-256 | 70975fbbb8cf07c647ff3aa037fab06599b3f1b73743a8ff8dfc50d17a68f98f |
Hashes for pyodps-0.12.0-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 73af34287dac7d46c3d50a0e37a3cd3626b57e7b3e0c4bf7d16c9ae02a7847f8 |
|
MD5 | 6f807fd86109f11958836fb5854f9896 |
|
BLAKE2b-256 | 025931075126ebccd1b4a2fa4ba4911ca20ba89746635b85d14a28cd515a5ed1 |
Hashes for pyodps-0.12.0-cp37-cp37m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 196f0baeb5d70d7ef33cc93ff530669a782dfe77a5b32a01c46461417ab216fc |
|
MD5 | 5c4f32f001fbab4f5d9063c9d1b9f8db |
|
BLAKE2b-256 | a35ac764ff271ba6eb6ad2149e99e68bc2fe94bdbec691200da86171e9e3900a |
Hashes for pyodps-0.12.0-cp37-cp37m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 854bdab8122a903792b71075e3312cc20b61f272462b8d4f64b3359091ac7d5d |
|
MD5 | ef6f9597d6345273d623ba337e2c049c |
|
BLAKE2b-256 | f1da83690490bb79b8c65e3026291ff99880401697a42d99ef8926e9abfbdb5e |
Hashes for pyodps-0.12.0-cp37-cp37m-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ee5b933c0e27cc2dfe06dc686ceb04f41a161b09bc48cd2013e4f5a9056c82fb |
|
MD5 | ab07a33c786c8c461859b63c1b2acdec |
|
BLAKE2b-256 | 8107af1cefd53f7fefb1162d48bfdf421a84f4bd02cd20403812dcf4429c8d09 |
Hashes for pyodps-0.12.0-cp37-cp37m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 24b737425f5c0d7b3d5cc088e521f23afd56380ed6e48fb357e77d3d13a5b66c |
|
MD5 | b2960daf63491f5a0709201f8adf903f |
|
BLAKE2b-256 | 7fe85762f1cb32d1861df085e676aba18880c0d44bb0e45db74d04335b601480 |
Hashes for pyodps-0.12.0-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8f5a1b14830402b75991ce1be67d6a73ee54f8b1ec860763282960e18d82e4d3 |
|
MD5 | dc26b8481a2ac0eae6a2aac9bb3edb24 |
|
BLAKE2b-256 | a397d979e544422f50aec241d553b2fc245cdec3cbd620479751d403721cfe74 |
Hashes for pyodps-0.12.0-cp36-cp36m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | dfbe9a46ce5fc6d92070651a9cd85c04f9f2fd4bf5bbf168042060d5bea35212 |
|
MD5 | ceb81d338a2d93cb40eb412c3de9f8a2 |
|
BLAKE2b-256 | 5da2c2793e57360ffa0eb3bf3920ce5e66dd841bfe27a71ad8b3734dfa54e6b2 |
Hashes for pyodps-0.12.0-cp36-cp36m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2ec6765149d787adbb6d5b866fe981e0dbc4db1ec9e98557afb9a47fb9a880fe |
|
MD5 | 2b5c73320ceb460b321e5c3c167c538d |
|
BLAKE2b-256 | 1128e73027f41e9ebabb1f390120453f4369468e1d7dc65bd4e36b3a43e7003b |
Hashes for pyodps-0.12.0-cp36-cp36m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c0f297b0a5c5d367b3d9b75d42c9dc3d2ef5afcb8a029ac12fd5b00bef663732 |
|
MD5 | b51e8a1ef67365f58fb13c0698b9812b |
|
BLAKE2b-256 | de0106f56cae3af9b1f6f21fd380c66c9c7607ffb7f083d7123b73ffbad55aa9 |
Hashes for pyodps-0.12.0-cp36-cp36m-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | dcea27130464bd570d43459095a8ec83af5a2b63f8994e82fc80ed628694a795 |
|
MD5 | 3a3d9578cd6a9687c5d572aa047674ee |
|
BLAKE2b-256 | 18d5ab2eaebf30af24365770a1b623fd26cc91227c6362df8da84da9f054e40e |
Hashes for pyodps-0.12.0-cp35-cp35m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 83fc14e32fa5285f0909f1ef4c89ccc853fbd75f647d52db259c29c9b0aa9565 |
|
MD5 | 94e6b60fdb0f8988f96bb3b2fa9f686a |
|
BLAKE2b-256 | ce3b55b2951b6aaef28bf284fe630cb52a3685f9b41e0f8217fc712891449e76 |
Hashes for pyodps-0.12.0-cp35-cp35m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8a89aab42155660e0146b25f9942c48df48bb190e3d4daa31e72173e169132e5 |
|
MD5 | 197d24f3fbd27b9984f560b494cc2f45 |
|
BLAKE2b-256 | ea2d558231af93362d4ebb5d03e927ad907460edd732bd79504950c7207fb77c |
Hashes for pyodps-0.12.0-cp35-cp35m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 15271b9aad8cd1ffa17d6dd6f940954e9e7f8aae12f6e40923b1ca117699b70d |
|
MD5 | e5e661d16a25abf0a16c097d5445b931 |
|
BLAKE2b-256 | ddc4348a58afe9dd488f575ac47fe314503b7a5f5292cd2d13260984d3dfc348 |
Hashes for pyodps-0.12.0-cp27-cp27mu-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6b96ce696554d0d5383b12a7defb9eb3a58e629883754796a679cb4eea6bbde4 |
|
MD5 | 44c733b5e41c5d810423bfb84fd1d3a9 |
|
BLAKE2b-256 | 0486564677dc1e1b4f043c346c59356013819135ab65424cc8f79d5af9ee56f1 |
Hashes for pyodps-0.12.0-cp27-cp27m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 026a6c0b2a3a060af25a65792d8f89c93634c61dd550eb0a19f83bd033f2c3f7 |
|
MD5 | c07b52cfec3f6059945aa541d3637428 |
|
BLAKE2b-256 | 3c93ade160345bfefa2037e9be75f87e48e206c1090090859f1fce04ce860d1d |
Hashes for pyodps-0.12.0-cp27-cp27m-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c8d787967c593934b0b903b7be746c594ee0bdd9c9247eb31bcda3d56bd549c0 |
|
MD5 | bba258399ff98369875c9e1a791ce862 |
|
BLAKE2b-256 | cea02978ed2015c0f63f68dd401124bbd97d6722bd1134c45ca73909a5927365 |