casregnum provides a Python class 'CAS' for working with CAS Registry Numbers®. It allows managing, sorting and checking CAS numbers.
Project description
casregnum
Python class to manage, check and sort CAS Registry Numbers® (CAS RN®).
Table of Content
Description
casregnum is a Python class to manage, check, and sort CAS Registry Numbers® (CAS RN®) by the Chemical Abstracts Service. Check their official FAQ website for more information on CAS numbers.
How to install and uninstall?
casregnum can be installed from the Python Package Index (PyPI) repository by calling
pip install casregnum
In order to uninstall casregnum from your local environment use
pip uninstall casregnum
How to use?
casregnum provides the CAS
class for creating a CAS Registry Number® instance:
from casregnum import CAS
substance = CAS(cas_rn)
Note that cas_rn
can either be an integer or a string. If you provide an integer, the CAS
class will take care of formatting the CAS RN® for you. If you provide a string, it needs to comply with the CAS number formatting rules, i. e. 2-7 digits dash two digits dash single check digit (_____00-00-0).
The CAS
class offers the following three properties:
.cas_string # CAS number formatted as a string
.cas_integer # CAS number as an integer
.check_digit # check digit of the CAS number
Examples:
from casregnum import CAS
caffeine = CAS(58_08_2)
theine = CAS("58-08-2")
l_lacticacid = CAS(79_33_4)
d_lacticacid = CAS(10326_41_7)
octanes = [
CAS(111_65_9), CAS(592_27_8), CAS(589_81_1), CAS(589_53_7), CAS( 590_73_8), CAS(584_94_1),
CAS(589_43_5), CAS(592_13_2), CAS(563_16_6), CAS(583_48_2), CAS( 619_99_8), CAS(564_02_3),
CAS(540_84_1), CAS(560_21_4), CAS(565_75_3), CAS(609_26_7), CAS(1067_08_9), CAS(594_82_1),
]
print(f"str: {caffeine}")
print(f"int: {theine.cas_integer}")
print(f"check digit: {caffeine.check_digit}")
print(f"{caffeine} == {theine}: {caffeine == theine}")
print(f"{caffeine} > {theine}: {caffeine > theine}")
print(f"{l_lacticacid} > {d_lacticacid}: {l_lacticacid > d_lacticacid}")
print(f"{l_lacticacid} < {d_lacticacid}: {l_lacticacid < d_lacticacid}")
for i, isomer in enumerate(sorted(octanes), start=1):
print(f"{isomer:>9}", end=", ")
if i % 6 == 0:
print()
will generate the following output:
str: 58-08-2
int: 58082
check digit: 2
58-08-2 == 58-08-2: True
58-08-2 > 58-08-2: False
79-33-4 > 10326-41-7: False
79-33-4 < 10326-41-7: True
111-65-9, 540-84-1, 560-21-4, 563-16-6, 564-02-3, 565-75-3,
583-48-2, 584-94-1, 589-43-5, 589-53-7, 589-81-1, 590-73-8,
592-13-2, 592-27-8, 594-82-1, 609-26-7, 619-99-8, 1067-08-9,
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 Distribution
File details
Details for the file casregnum-1.0.1.tar.gz
.
File metadata
- Download URL: casregnum-1.0.1.tar.gz
- Upload date:
- Size: 5.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.9.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 501d655a7fa7b57acaba7d6a91827a93b4c28c5374584a47568bf450b7907ced |
|
MD5 | 1f64237b4e414bd8d9f466ae212fd701 |
|
BLAKE2b-256 | 760f193f6535f82847916cd42d5bf0277028b35564547b53bf2291e5868b09e9 |
File details
Details for the file casregnum-1.0.1-py3-none-any.whl
.
File metadata
- Download URL: casregnum-1.0.1-py3-none-any.whl
- Upload date:
- Size: 5.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.9.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9cdf402a81b82294013b426addc2af85ff2da8a9f689f79d1847a9d28e44a778 |
|
MD5 | 1935e0eb5cb75371af12733cf6ebed8c |
|
BLAKE2b-256 | 85744acf83e56ca08acff30934fa4a5a8552cf37bbdd032a5d13cec56b277773 |