Vcontacts in a Python Package
A lightweight Python package to simplify running Vcontacts,
a tool to compute surface areas in contact using the constrained Voronoi procedure from the paper:
Quantification of protein surfaces, volumes and atom-atom contacts using a constrained Voronoi procedure
(doi: 10.1093/bioinformatics/18.10.1365)
This makes it easy to run Vcontacts directly from Python, capture the output, and optionally return the result as a Python dictionary.
Installation
pip install vcon-py
Example Usage
from vconpy import run_vcon
# Run Vcontacts
result = run_vcon("/path/to/protein.pdb")
# Run Vcontacts and return a dictionary instead of outputting a file
result_with_dictionary = run_vcon("/path/to/protein.pdb", as_dictionary=True)
# NRGTEN requires setting showbonded as True
result_nrgten = run_vcon("/path/to/protein.pdb", as_dictionary=True, showbonded=True)
print(result_with_dictionary.surface_dictionary)
Arguments
| Argument | Type | Description | Default |
|---|---|---|---|
pdb_filename |
str |
Path to the input PDB file. | Required |
showbonded |
bool |
If True, include covalently bonded atoms in the contacts (-all flag). |
False |
normalize |
bool |
If True, normalize contacts to percent of total contact area. Otherwise, contacts are given in SAS units (Ų). (-norm flag). |
False |
planedef |
str |
Plane definition for analysis. Options: X (extended radical plane), R (radical plane), B (bisecting plane). |
None |
as_dictionary |
bool |
If True, returns a Python dictionary. The .vcon file is deleted after parsing. |
False |
Returns
The function returns a VconResult namedtuple with the following fields:
| Field | Type | Description |
|---|---|---|
vcon_filename |
str |
Path to the generated .vcon file. |
surface_dictionary |
dict |
Dictionary of atom-atom contact areas (only if as_dictionary=True). |
stdout |
str |
Standard output from the Vcontacts process. |
stderr |
str |
Standard error from the Vcontacts process. |
returncode |
int |
Exit code from the Vcontacts process. |
Raises
| Error | Condition |
|---|---|
ValueError |
Raised if the input file does not exist, or if vcon_type is invalid. |
VconError |
Raised if the Vcontacts executable is missing, not executable, or fails. |
Metadata
Release files for vcon-py 1.0.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| vcon_py-1.0.2.tar.gz | 24.3 kB | Details |
Built distributions (wheels)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| vcon_py-1.0.2-py3-none-win_amd64.whl | Python 3 | none | Windows x86-64 | Details |
| vcon_py-1.0.2-py3-none-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl | Python 3 | none | Linux glibc 2.17+ x86-64, Linux glibc 2.5+ x86-64 | Details |
| vcon_py-1.0.2-py3-none-macosx_10_9_universal2.whl | Python 3 | none | macOS 10.9+ universal2 (ARM64, x86-64) | Details |
Total release size: 114.8 kB
Release files / vcon_py-1.0.2.tar.gz
| Download URL | vcon_py-1.0.2.tar.gz |
|---|---|
| Size | 24.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d1f9e3ff6e2f246c6b0ee7a61f7e12e928a54486c314fbcf0a289c158b93a2d9
|
|
BLAKE2b-256 checksum How to use checksums |
5baa671fb2abe9d7078e4d1a1fa828d6800ee62d6ea6b26fa822ce85edb4cc18
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 3, 2025.
Transparency logRelease files / vcon_py-1.0.2-py3-none-win_amd64.whl
| Download URL | vcon_py-1.0.2-py3-none-win_amd64.whl |
|---|---|
| Size | 28.6 kB |
| Tags | Python 3 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
60768817be53faba3dcc7336e18bee26b5c39aa43a34b9282acd04a0ebbf2383
|
|
BLAKE2b-256 checksum How to use checksums |
4355170cc71f9d8475377a42aae2b07c7819db9fd7cfb88e01adc3106f11a115
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 3, 2025.
Transparency logRelease files / vcon_py-1.0.2-py3-none-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | vcon_py-1.0.2-py3-none-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 21.8 kB |
| Tags | Linux glibc 2.17+ x86-64 Linux glibc 2.5+ x86-64 Python 3 |
|
SHA-256 checksum How to use checksums |
81d22e3f6b98b99f6a28b36eeef1f343d5789e67bbc58634aee7f2e1efad7209
|
|
BLAKE2b-256 checksum How to use checksums |
a1014146cb1b0263d3b8ef158465aa321f29e12307df645b494b8adbe0ec3627
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 3, 2025.
Transparency logRelease files / vcon_py-1.0.2-py3-none-macosx_10_9_universal2.whl
| Download URL | vcon_py-1.0.2-py3-none-macosx_10_9_universal2.whl |
|---|---|
| Size | 40.1 kB |
| Tags | Python 3 macOS 10.9+ universal2 (ARM64, x86-64) |
|
SHA-256 checksum How to use checksums |
9b155cb90a74bb34e30902d45f3707282ef5e1ab5ddfd64b36ab17ba36de364a
|
|
BLAKE2b-256 checksum How to use checksums |
81b3aefc921cf1f131d7df7a8df87837b90358e1d5bbf9f0e50f81b278cdf530
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 3, 2025.
Transparency log