DV - Dimensional Variables
DV (DimensionalVariable) is a Python library for handling physical quantities with automatic unit checking and conversion. It is a wrapper library to the core Rust library, which contains all the logic. Read more about the project (including extra docs) at https://dv.alextac.com.
Features
- Unit-safe math: Add, subtract, multiply, divide with automatic unit checking
- Easy conversions: Convert between any compatible units
- Comprehensive unit support: SI units, imperial units, and more
- Type safety: Catch unit errors at runtime before they cause problems
Quick Example
from dv_py import DimensionalVariable as dv
# Create dimensioned variables
velocity = dv(10.0, "m/s")
time = dv(2.0, "s")
# Automatic dimensional analysis
distance = velocity * time
print(distance.value_in("m")) # 20.0
print(distance.value_in("km")) # 0.02
# Unit checking prevents errors
mass = dv(5.0, "kg")
distance + mass # Raises DVError: incompatible units!
Installation
pip install dv_py
Documentation
Full documentation, examples, and guides at: https://dv.alextac.com
License
This project is licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright © 2025 Alex Tacescu
Metadata
Release files for dv-py 0.3.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
Total release size: 2.5 MB
Release files / dv_py-0.3.3-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
| Download URL | dv_py-0.3.3-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl |
|---|---|
| Size | 270.3 kB |
| Tags | Linux glibc 2.17+ ARMv7l PyPy 3.10 PyPy 3.10 7.3 |
|
SHA-256 checksum How to use checksums |
91b8b9443b777c95a1af2cc952f15be9ce6281f0d89af47139d469b3eb3dd6e4
|
|
BLAKE2b-256 checksum How to use checksums |
6d557d48cb9481b68a63b8179d7bf2e86a7e91177401b7eb72d1d05ddf3407c8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Release files / dv_py-0.3.3-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
| Download URL | dv_py-0.3.3-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl |
|---|---|
| Size | 260.0 kB |
| Tags | Linux glibc 2.17+ ARM64 PyPy 3.10 PyPy 3.10 7.3 |
|
SHA-256 checksum How to use checksums |
19ee14bfb96936cb69593f6fd48c83809fab97142bad5a8dffef804d0cd748e7
|
|
BLAKE2b-256 checksum How to use checksums |
ebc2c7f3e58ffb39c0cbc584cd247e98a4a44e19d305b61fd9aa7d8259dda12e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Release files / dv_py-0.3.3-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
| Download URL | dv_py-0.3.3-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl |
|---|---|
| Size | 272.1 kB |
| Tags | Linux glibc 2.17+ ARMv7l PyPy 3.9 PyPy 3.9 7.3 |
|
SHA-256 checksum How to use checksums |
7512bd7aa6281c2d8d4fb02b35dbfafdbf194ad336099dc2f3d7a7fb8e400bb1
|
|
BLAKE2b-256 checksum How to use checksums |
c7f959bcf9a47a7f86e961cf5d5b91627867fab3b12b74011ff005268055287d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Release files / dv_py-0.3.3-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
| Download URL | dv_py-0.3.3-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl |
|---|---|
| Size | 261.0 kB |
| Tags | Linux glibc 2.17+ ARM64 PyPy 3.9 PyPy 3.9 7.3 |
|
SHA-256 checksum How to use checksums |
0e69050e9692e521a627da03e9b2a07334a735b5c206912c099ce4ae87d85f3f
|
|
BLAKE2b-256 checksum How to use checksums |
05bda3f5a79b36ed206df0ae614cc137835d8c9d65dbe0df93aa42646a8ee93c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Release files / dv_py-0.3.3-cp38-abi3-win_amd64.whl
| Download URL | dv_py-0.3.3-cp38-abi3-win_amd64.whl |
|---|---|
| Size | 175.8 kB |
| Tags | CPython 3.8 Windows x86-64 abi3 |
|
SHA-256 checksum How to use checksums |
776a97cf5f027f369c4454f050d1c4a143d6a904b1cf6c389395eb792a4eef7d
|
|
BLAKE2b-256 checksum How to use checksums |
c18d5e85e79a787732b0bd57c1cda26df3f5228b9916ea2fd70ddacfc5b1e7ab
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Release files / dv_py-0.3.3-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | dv_py-0.3.3-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 274.8 kB |
| Tags | CPython 3.8 Linux glibc 2.17+ x86-64 abi3 |
|
SHA-256 checksum How to use checksums |
cc417b69061f4b74bdb9b9ba754730c3eb2059f766ac2e77cd7977d2195a8d08
|
|
BLAKE2b-256 checksum How to use checksums |
f059749ae053399479ac52df68d6725ccad454b24e78094e73e12f963f7eaace
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Release files / dv_py-0.3.3-cp38-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
| Download URL | dv_py-0.3.3-cp38-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl |
|---|---|
| Size | 270.4 kB |
| Tags | CPython 3.8 Linux glibc 2.17+ ARMv7l abi3 |
|
SHA-256 checksum How to use checksums |
ad4fed313228ed8685efa990a16360fc9afd9691fef27518805f53384cb7c3f7
|
|
BLAKE2b-256 checksum How to use checksums |
fa814163886e07a84769486c18f192fd39592ffdd6496204c8bc3c7be127169d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Release files / dv_py-0.3.3-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
| Download URL | dv_py-0.3.3-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl |
|---|---|
| Size | 260.3 kB |
| Tags | CPython 3.8 Linux glibc 2.17+ ARM64 abi3 |
|
SHA-256 checksum How to use checksums |
8c90aa8674728443f795a25aa9e1a9e3d57e2db774e9c685aa8a40eaf7068268
|
|
BLAKE2b-256 checksum How to use checksums |
1ac6f18335a46f5aecb54375055b00e8730b7c7d5611f23aa87a4adfeec54126
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Release files / dv_py-0.3.3-cp38-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
| Download URL | dv_py-0.3.3-cp38-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl |
|---|---|
| Size | 498.1 kB |
| Tags | CPython 3.8 abi3 macOS 10.12+ universal2 (ARM64, x86-64) macOS 10.12+ x86-64 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
3d0311bb3f8fd5eb280aa0a9b2c55bdbb71147a1c3a172e965728208eaa86c45
|
|
BLAKE2b-256 checksum How to use checksums |
7f77d955fe202d2c272e6a726a9e4af21fa0bb2b38090a057e85ae16b8fabed3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Security for dv-py 0.3.3
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.