pYPKa_Z_RPS19a

Freezer ID

Strain#..: ?
Box......: ?
Position.: ?

Importing the pydna package. Pydna is open source, documentated here and has a support forum as well as a publication:

Pereira F, Azevedo F, Carvalho Â, Ribeiro GF, Budde MW, Johansson B: Pydna: a simulation and documentation tool for DNA assembly strategies using python. BMC Bioinformatics 2015, 16:142.


In [1]:
from pydna.all import *

Read the cloning vector from a local file file, description of pYPKa.


In [2]:
pYPKa =read("pYPKa.gb")

This vector should be a circular 3128 bp DNA molecule.


In [3]:
pYPKa


Out[3]:

The circular seguid checksum of pYPKa should be

aV1eIrzOiCjvw01yvKkxDXHKLMk


In [4]:
pYPKa.cseguid()


Out[4]:
aV1eIrzOiCjvw01yvKkxDXHKLMk

Importing the restriction enzyme to be used for cloning from Biopython. ZraI


In [5]:
from Bio.Restriction import ZraI

This enzyme should cut only once in pYPKa.


In [6]:
pYPKa_ZraI = pYPKa.linearize(ZraI)

The template below comes from a Genbank record. Access to Genbank is needed in order to download the template. If you execute this script, change the email address below to your own. Always tell Genbank who you are, when using their web service.


In [7]:
gb =Genbank("bjornjobb@gmail.com")

The template is downloaded from Genbank below.


In [8]:
template = gb.nucleotide("BK006948.2 REGION: complement(92851..93394)")

The template is a 544 bp linear DNA fragment.


In [9]:
template




The insert has the sequence shown below.


In [10]:
str(template.seq)


Out[10]:
'GTTAACTGAAATGAAAATTTCATATTTACTTTTTTATTGTTACTCATTTGTAATTCATAAACTACATACACTTTCAATCGTTTCTTTCAAACTACATAATTTTTACTGGCGATCAATAACGCATTTAGTTCATAAAGTGAGTCAAAGTTAACACTAGAATATTTGCTACACCATCAATAGGCTAGACCATAGTTGAAAACTTTCATAATAAATTCTTCCGTTTTCAATCTTCATATACTGTGTCTCTAACCATGATACCGTGACACAACTACATCCGTACACATGTGACGTTCGTTCAACCCGTACATTTATATAAAACCGTTCTGGCGGCCTTTTATTTTTTTACATTTCTTATGATCGGGATTGCAGAACGCCGTGAAATTTTTCAATGTGAGGTTCGGCCTTGTTTGCAAAAGCCCTATTGAGATACCGGAAAGATATAGGTGAAATGAAGAAAACTATGGGTTGTATATCTAATACCCCGGTGCGTTTATTAATATTTTAGCTTGAAAGCGAAGTGATACGATCGACAAATAGAGTAAAA'

The seguid checksum of the template should be

CqNHbKdfVC5vap_jjDXfiQIyBvo


In [11]:
template.seguid()


Out[11]:
CqNHbKdfVC5vap_jjDXfiQIyBvo

Two primers are used to amplify the insert:


In [12]:
f,r =parse(""">652_ScRPS19atpf2
                     ttaaatGTTAACTGAAATGAAAATTT
                     >651_ScRPS19atpr_PacI
                     taattaaTTTTACTCTATTTGTCGATC""", ds=False)

insert =pcr(f, r, template)

The primers anneal on the template like this.


In [13]:
insert.figure()


Out[13]:
      5GTTAACTGAAATGAAAATTT...GATCGACAAATAGAGTAAAA3
                              |||||||||||||||||||| tm 48.5 (dbd) 52.8
                             3CTAGCTGTTTATCTCATTTTaattaat5
5ttaaatGTTAACTGAAATGAAAATTT3
       |||||||||||||||||||| tm 46.0 (dbd) 51.8
      3CAATTGACTTTACTTTTAAA...CTAGCTGTTTATCTCATTTT5

A recombinant plasmid is formed by ligating the insert PCR product to the linear vector.


In [14]:
plasmid = (pYPKa_ZraI + insert).looped()

The plasmid sequence is rotated so that the origin is in the same position as for the cloning vector sequence.


In [15]:
pYPKa_Z_RPS19a = plasmid.synced(pYPKa)

Calculate cseguid checksum for the resulting plasmid. Should be

l97SuXHlcPY5ZlH2j3JPae6zSO0


In [16]:
pYPKa_Z_RPS19a.cseguid()


Out[16]:
X6BxAcX4KUzScMcGb0RyNvAWwCc

In [17]:
str(pYPKa_Z_RPS19a.seq)


Out[17]:
'TCGCGCGTTTCGGTGATGACGGTGAAAACCTCTGACACATGCAGCTCCCGGAGACGGTCACAGCTTGTCTGTAAGCGGATGCCGGGAGCAGACAAGCCCGTCAGGGCGCGTCAGCGGGTGTTGGCGGGTGTCGGGGCTGGCTTAACTATGCGGCATCAGAGCAGATTGTACTGAGAGTGCACCATAGATCCTGAGGATCGGGGTGATAAATCAGTCTGCGCCACATCGGGGGAAACAAAATGGCGCGAGATCTAAAAAAAAAGGCTCCAAAAGGAGCCTTTCGCGCTACCAGGTAACGCGCCACTCCGACGGGATTAACGAGTGCCGTAAACGACGATGGTTTTACCGTGTGCGGAGATCAGGTTCTGATCCTCGAGCATCTTAAGAATTCGTCCCACGGTTTGTCTAGAGCAGCCGACAATCTGGCCAATTTCCTGACGGGTAATTTTGATTTGCATGCCGTCCGGGTGAGTCATAGCGTCTGGTTGTTTTGCCAGATTCAGCAGAGTCTGTGCAATGCGGCCGCTGACttaaatGTTAACTGAAATGAAAATTTCATATTTACTTTTTTATTGTTACTCATTTGTAATTCATAAACTACATACACTTTCAATCGTTTCTTTCAAACTACATAATTTTTACTGGCGATCAATAACGCATTTAGTTCATAAAGTGAGTCAAAGTTAACACTAGAATATTTGCTACACCATCAATAGGCTAGACCATAGTTGAAAACTTTCATAATAAATTCTTCCGTTTTCAATCTTCATATACTGTGTCTCTAACCATGATACCGTGACACAACTACATCCGTACACATGTGACGTTCGTTCAACCCGTACATTTATATAAAACCGTTCTGGCGGCCTTTTATTTTTTTACATTTCTTATGATCGGGATTGCAGAACGCCGTGAAATTTTTCAATGTGAGGTTCGGCCTTGTTTGCAAAAGCCCTATTGAGATACCGGAAAGATATAGGTGAAATGAAGAAAACTATGGGTTGTATATCTAATACCCCGGTGCGTTTATTAATATTTTAGCTTGAAAGCGAAGTGATACGATCGACAAATAGAGTAAAAttaattaGTCGAGGAACGCCAGGTTGCCCACTTTCTCACTAGTGACCTGCAGCCGACGTGCCATCTGTGCAGACAAACGCATCAGGATATCCGGATTTACCTGAATCAATTGGCGAAATTTTTTGTACGAAATTTCAGCCACTTCACAGGCGGTTTTCGCACGTACCCATGCGCTACGTTCCTGGCCCTCTTCAAACAGGCCCAGTTCGCCAATAAAATCACCCTGATTCAGATAGGAGAGGATCATTTCTTTACCCTCTTCGTCTTTGATCAGCACTGCCACAGAGCCTTTAACGATGTAGTACAGCGTTTCCGCTTTTTCACCCTGGTGAATAAGCGTGCTCTTGGATGGGTACTTATGAATGTGGCAATGAGACAAGAACCATTCGAGAGTAGGATCCGTTTGAGGTTTACCAAGTACCATAAGATCCTTAAATTTTTATTATCTAGCTAGATGATAATATTATATCAAGAATTGTACCTGAAAGCAAATAAATTTTTTATCTGGCTTAACTATGCGGCATCAGAGCAGATTGTACTGAGAGTGCACCATATGCGGTGTGAAATACCGCACAGATGCGTAAGGAGAAAATACCGCATCAGGCGCTCTTCCGCTTCCTCGCTCACTGACTCGCTGCGCTCGGTCGTTCGGCTGCGGCGAGCGGTATCAGCTCACTCAAAGGCGGTAATACGGTTATCCACAGAATCAGGGGATAACGCAGGAAAGAACATGTGAGCAAAAGGCCAGCAAAAGGCCAGGAACCGTAAAAAGGCCGCGTTGCTGGCGTTTTTCCATAGGCTCCGCCCCCCTGACGAGCATCACAAAAATCGACGCTCAAGTCAGAGGTGGCGAAACCCGACAGGACTATAAAGATACCAGGCGTTTCCCCCTGGAAGCTCCCTCGTGCGCTCTCCTGTTCCGACCCTGCCGCTTACCGGATACCTGTCCGCCTTTCTCCCTTCGGGAAGCGTGGCGCTTTCTCATAGCTCACGCTGTAGGTATCTCAGTTCGGTGTAGGTCGTTCGCTCCAAGCTGGGCTGTGTGCACGAACCCCCCGTTCAGCCCGACCGCTGCGCCTTATCCGGTAACTATCGTCTTGAGTCCAACCCGGTAAGACACGACTTATCGCCACTGGCAGCAGCCACTGGTAACAGGATTAGCAGAGCGAGGTATGTAGGCGGTGCTACAGAGTTCTTGAAGTGGTGGCCTAACTACGGCTACACTAGAAGGACAGTATTTGGTATCTGCGCTCTGCTGAAGCCAGTTACCTTCGGAAAAAGAGTTGGTAGCTCTTGATCCGGCAAACAAACCACCGCTGGTAGCGGTGGTTTTTTTGTTTGCAAGCAGCAGATTACGCGCAGAAAAAAAGGATCTCAAGAAGATCCTTTGATCTTTTCTACGGGGTCTGACGCTCAGTGGAACGAAAACTCACGTTAAGGGATTTTGGTCATGAGATTATCAAAAAGGATCTTCACCTAGATCCTTTTAAATTAAAAATGAAGTTTTAAATCAATCTAAAGTATATATGAGTAAACTTGGTCTGACAGTTACCAATGCTTAATCAGTGAGGCACCTATCTCAGCGATCTGTCTATTTCGTTCATCCATAGTTGCCTGACTCCCCGTCGTGTAGATAACTACGATACGGGAGGGCTTACCATCTGGCCCCAGTGCTGCAATGATACCGCGAGACCCACGCTCACCGGCTCCAGATTTATCAGCAATAAACCAGCCAGCCGGAAGGGCCGAGCGCAGAAGTGGTCCTGCAACTTTATCCGCCTCCATCCAGTCTATTAATTGTTGCCGGGAAGCTAGAGTAAGTAGTTCGCCAGTTAATAGTTTGCGCAACGTTGTTGCCATTGCTACAGGCATCGTGGTGTCACGCTCGTCGTTTGGTATGGCTTCATTCAGCTCCGGTTCCCAACGATCAAGGCGAGTTACATGATCCCCCATGTTGTGCAAAAAAGCGGTTAGCTCCTTCGGTCCTCCGATCGTTGTCAGAAGTAAGTTGGCCGCAGTGTTATCACTCATGGTTATGGCAGCACTGCATAATTCTCTTACTGTCATGCCATCCGTAAGATGCTTTTCTGTGACTGGTGAGTACTCAACCAAGTCATTCTGAGAATAGTGTATGCGGCGACCGAGTTGCTCTTGCCCGGCGTCAATACGGGATAATACCGCGCCACATAGCAGAACTTTAAAAGTGCTCATCATTGGAAAACGTTCTTCGGGGCGAAAACTCTCAAGGATCTTACCGCTGTTGAGATCCAGTTCGATGTAACCCACTCGTGCACCCAACTGATCTTCAGCATCTTTTACTTTCACCAGCGTTTCTGGGTGAGCAAAAACAGGAAGGCAAAATGCCGCAAAAAAGGGAATAAGGGCGACACGGAAATGTTGAATACTCATACTCTTCCTTTTTCAATATTATTGAAGCATTTATCAGGGTTATTGTCTCATGAGCGGATACATATTTGAATGTATTTAGAAAAATAAACAAATAGGGGTTCCGCGCACATTTCCCCGAAAAGTGCCACCTGCTAAGAAACCATTATTATCATGACATTAACCTATAAAAATAGGCGTATCACGAGGCCCTTTCGTC'

The file is named pYPKa_Z_RPS19atp


In [18]:
pYPKa_Z_RPS19a.name = "pYPKa_Z_RPS19atp"
pYPKa_Z_RPS19a.description = "pYPKa_Z_RPS19atp"

Stamp sequence with cSEGUID checksum


In [19]:
pYPKa_Z_RPS19a.stamp()


Out[19]:
cSEGUID_X6BxAcX4KUzScMcGb0RyNvAWwCc

Write sequence to a local file.


In [20]:
pYPKa_Z_RPS19a.write("pYPKa_Z_RPS19a.gb")




Download pYPKa_Z_RPS19a


In [21]:
from pydna.all import *
reloaded =read("pYPKa_Z_RPS19a.gb")
assert reloaded.cseguid() in reloaded.definition