Skip to main content

Contains classes and code for representing double stranded DNA and functions for simulating homologous recombination between DNA molecules.

Project description

Pydna provide classes and functions for molecular biology using python. Notably, PCR, cut and paste cloning and homologous recombination between linear DNA fragments are supported. Most functionality is implemented as methods for the double stranded DNA sequence record classes Dseq and Dseqrecord, which are subclasses of the Biopython. Seq and SeqRecord classes.

Pydna might be useful to automate the simulation of sub cloning experiments using python. This could be helpful to generate examples for teaching purposes. Read the documentation or the cookbook with example files for further information.

Pydna was designed to semantically imitate how sub cloning experiments are typically documented in Scientific literature. Pydna code describing a sub cloning is reasonably compact and meant to be easily readable.

One use case for Pydna is to create a sort of executable documentation describing a subcloning experiment. The Pydna code unambiguously describe a sub cloning experiment, and can be executed to yield the sequence of the of the resulting DNA molecule.

Please post a message in the google group “pydna” at https://groups.google.com/forum/?fromgroups#!forum/pydna if you have problems, questions or comments.

Feedback is very welcome!

Typical usage at the command line could look like this:

>>> import pydna
>>> seq = pydna.Dseq("GGATCCAAA","TTTGGATCC",ovhg=0)
>>> seq
Dseq(-9)
GGATCCAAA
CCTAGGTTT
>>> from Bio.Restriction import BamHI
>>> a,b = seq.cut(BamHI)
>>> a
Dseq(-5)
G
CCTAG
>>> b
Dseq(-8)
GATCCAAA
    GTTT
>>> a+b
Dseq(-9)
GGATCCAAA
CCTAGGTTT
>>> b+a
Dseq(-13)
GATCCAAAG
    GTTTCCTAG
>>> b+a+b
Dseq(-17)
GATCCAAAGGATCCAAA
    GTTTCCTAGGTTT
>>> b+a+a
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python2.7/dist-packages/pydna/dsdna.py", line 217, in __add__
    raise TypeError("sticky ends not compatible!")
TypeError: sticky ends not compatible!
>>>

NEWS

version date comment
0.1.3 2013-04-09 pydna created from Python-dna.

System Requirements

Python 2.x

Versions other than 2.7 has not been tried with this software. Version 2.7.3 was used to build the distribution.

Python 3.x

This code has not been tried with python 3.

Installation

Source

You need to install the dependencies listed above. If you are using Windows, you need to have a C compiler installed. The free MS visual studio 2008 express can be used.

Open the pydna source code directory (containing the setup.py file) in terminal and type:

sudo python setup.py install <enter>

If you need to do additional configuration, e.g. changing the base directory, please type python setup.py, or see the documentation for Setuptools.

Binary distribution

A Binary installer for 32 bit editions of MS Windows XP and 7 are provided.

The installer has been tested on succesfully on both.

The dependencies have to be installed from source or using binary installers for 32 bit windows.

This is a list of locations of binary installers:

Source Code Repository

pydna is hosted by google code:

http://code.google.com/p/pydna/

Distribution Structure

README.txt – This file.

NEWS.txt – Release notes and news

LICENSE.txt – What you can do with the code.

MANIFEST.in – Tells distutils what files to distribute

setup.py – Installation file.

setup_build.py – Building from Cython source (not needed for install)

distribute_setup.py – Bootstrap distribute installation for version 0.6.34 which will pretend to be setuptools 0.6c11

run_tests.py – run tests by “python run_tests.py”<enter>

pydna/ – The actual code.

docs/ – Documentation.

scripts/ – Miscellaneous perhaps useful scripts

tests/ – Testing code

Project details


Release history Release notifications

History Node

2.0.3

History Node

2.0.2

History Node

2.0.2a0

History Node

2.0.1

History Node

2.0.0

History Node

2.0.0a8

History Node

2.0.0a7

History Node

2.0.0a6

History Node

2.0.0a4

History Node

2.0.0a3

History Node

2.0.0a2

History Node

1.2.0

History Node

1.2.0a1

History Node

1.2.0a0

History Node

1.1.5

History Node

1.1.4

History Node

1.1.3a3

History Node

1.1.1

History Node

1.1.0

History Node

1.0.2

History Node

1.0.1

History Node

1.0.0

History Node

0.9.9

History Node

0.9.8

History Node

0.9.4

History Node

0.9.3

History Node

0.9.2

History Node

0.9.1

History Node

0.9.0

History Node

0.8.4

History Node

0.8.3

History Node

0.8.1

History Node

0.8.0

History Node

0.7.2

History Node

0.6.5

History Node

0.6.4

History Node

0.6.3

History Node

0.6.2

History Node

0.6.1

History Node

0.6.0

History Node

0.2.1

History Node

0.2.0

History Node

0.1.7

History Node

0.1.6

History Node

0.1.5

History Node

0.1.4

This version
History Node

0.1.3

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
pydna-0.1.3.tar.gz (2.9 MB) Copy SHA256 hash SHA256 Source None Apr 9, 2013
pydna-0.1.3.win32-py2.7.exe (281.8 kB) Copy SHA256 hash SHA256 Windows Installer 2.7 Apr 9, 2013
pydna-0.1.3.win-amd64-py2.7.exe (311.3 kB) Copy SHA256 hash SHA256 Windows Installer 2.7 Apr 9, 2013
pydna-0.1.3.zip (3.0 MB) Copy SHA256 hash SHA256 Source None Apr 9, 2013

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page