This commit is contained in:
mpabi 2024-06-12 12:27:18 +02:00
parent 71bd8ecfb8
commit 9ad74c1745
4 changed files with 47 additions and 146 deletions

View File

@ -8,11 +8,13 @@ import os
from Bio import Entrez, SeqIO
from Bio.Seq import Seq
from Bio.SeqFeature import SeqFeature, FeatureLocation
from Bio.Restriction import RestrictionBatch, EcoRI, BamHI, HindIII
from Bio.Restriction import AllEnzymes, Analysis
from Bio.Graphics import GenomeDiagram
from reportlab.lib import colors
#%%
# Ustawienia Entrez
Entrez.email = "your_email@example.com" # Wpisz swój adres email
@ -39,7 +41,11 @@ plasmid_file_path = 'plasmid_sequence.gb'
# ID dla sekwencji w NCBI
gfp_id = "U87974"
plasmid_id = "U96626"
#plasmid_id = "U96626"
plasmid_id = "M77789" #puc19
#plasmid_id = "EF442785" #pet28
#%%
# Sprawdzanie i pobieranie sekwencji GFP
if not os.path.exists(gfp_file_path):
@ -54,6 +60,7 @@ else:
gfp_seq = str(gfp_record.seq)
print(f"GFP Sequence: {gfp_seq[:60]}...")
#%%
# Sprawdzanie i pobieranie sekwencji plazmidu
if not os.path.exists(plasmid_file_path):
print(f"Plik {plasmid_file_path} nie istnieje. Pobieranie z serwera NCBI...")
@ -63,6 +70,7 @@ else:
print(f"Plik {plasmid_file_path} istnieje. Wczytywanie danych z lokalnego pliku...")
record = load_local_sequence(plasmid_file_path)
print(f"Wczytano dane z pliku {plasmid_file_path}.")
#%%
# Dodanie sekwencji kodującej His6
his6_tag = "CACCACCACCACCACCAC" # Sekwencja kodująca 6x histydynę (His6)
@ -79,15 +87,27 @@ reverse_primer = str(Seq(gfp_seq_with_his6[-20:]).reverse_complement()) # Ostat
print(f"Forward Primer: {forward_primer}")
print(f"Reverse Primer: {reverse_primer}")
#%%
# Miejsca cięcia restryktazy
enzymes = RestrictionBatch([EcoRI, BamHI, HindIII])
#enzymes = RestrictionBatch([BamHI, ])
restriction_sites = enzymes.search(record.seq)
#%%
# Przeprowadzenie analizy restrykcyjnej
analysis = Analysis(AllEnzymes, record.seq)
# Wynik analizy
results = analysis.full()
# Wyświetlanie wyników
#for enzyme in results:
# if len(results[enzyme]) > 0:
# print(f"{enzyme}: {results[enzyme]}")
#%%
# Utwórz diagram plazmidu
diagram = GenomeDiagram.Diagram("pET-28a(+) Plasmid Map")
diagram = GenomeDiagram.Diagram("PUC19 Plasmid Map")
track = diagram.new_track(1, name="Annotated Features", greytrack=True)
feature_set = track.new_set()
@ -138,4 +158,3 @@ diagram.draw(format="circular", circular=True, pagesize='A4', start=0, end=len(r
diagram.write("pdf/plasmid_map.pdf", "PDF")
print("Zapisano diagram plazmidu do pliku 'plasmid_map.pdf'")

29
gfp2.py
View File

@ -91,6 +91,8 @@ for feature in record.features:
print()
#%%
# Znajdź i wyświetl sekwencję terminatora T7
for feature in record.features:
@ -110,6 +112,25 @@ for feature in record.features:
print()
#%%
t=record[25:73].seq
#%%
a = str (t)
#%%
class Rev:
def __init__ (self, seq=None):
self.seq = seq
def rev (self):
pass
#%%
r = Rev(a)
#%%
# Sekwencja DNA
@ -169,14 +190,6 @@ def print_sticky_ends(seq1, sticky_end1, seq2, sticky_end2, start1, start2):
print("Fragmenty po cięciu NcoI i Bpu1102I:")
print_sticky_ends(ncoI_fragment[:-4], ncoI_sticky_end, bpu1102I_fragment[4:], bpu1102I_sticky_end, ncoI_site-16, bpu1102I_site)
#%%
# Dodanie sekwencji kodującej His6
his6_tag = "CACCACCACCACCACCAC" # Sekwencja kodująca 6x histydynę (His6)
#%%
# Sekwencja białka GFP z His6 tagiem na końcu
t = gfp_seq_with_his6 = gfp_seq + his6_tag
#%%
# Projektowanie starterów
forward_primer = gfp_seq[:20] # Pierwsze 20 nukleotydów sekwencji GFP

View File

@ -32,7 +32,7 @@ endobj
endobj
6 0 obj
<<
/Author (anonymous) /CreationDate (D:20240609165346+00'00') /Creator (ReportLab PDF Library - www.reportlab.com) /Keywords () /ModDate (D:20240609165346+00'00') /Producer (ReportLab PDF Library - www.reportlab.com)
/Author (anonymous) /CreationDate (D:20240610140644+00'00') /Creator (ReportLab PDF Library - www.reportlab.com) /Keywords () /ModDate (D:20240610140644+00'00') /Producer (ReportLab PDF Library - www.reportlab.com)
/Subject (unspecified) /Title () /Trapped /False
>>
endobj
@ -62,7 +62,7 @@ xref
trailer
<<
/ID
[<f313c560442dc50108a0228a7cfc2c2b><f313c560442dc50108a0228a7cfc2c2b>]
[<f137f01226224b6e36124c27289f4847><f137f01226224b6e36124c27289f4847>]
% ReportLab generated PDF document -- digest (http://www.reportlab.com)
/Info 6 0 R

View File

@ -1,131 +0,0 @@
LOCUS MMU96626 4742 bp DNA linear ROD 07-FEB-1998
DEFINITION Mus musculus chondroadherin gene, complete cds.
ACCESSION U96626
VERSION U96626.1
KEYWORDS .
SOURCE Mus musculus (house mouse)
ORGANISM Mus musculus
Eukaryota; Metazoa; Chordata; Craniata; Vertebrata; Euteleostomi;
Mammalia; Eutheria; Euarchontoglires; Glires; Rodentia; Myomorpha;
Muroidea; Muridae; Murinae; Mus; Mus.
REFERENCE 1 (bases 1 to 4742)
AUTHORS Landgren,C., Beier,D.R., Fassler,R., Heinegard,D. and Sommarin,Y.
TITLE The mouse chondroadherin gene: characterization and chromosomal
localization
JOURNAL Genomics 47 (1), 84-91 (1998)
PUBMED 9465299
REFERENCE 2 (bases 1 to 4742)
AUTHORS Landgren,C. and Sommarin,Y.
TITLE Direct Submission
JOURNAL Submitted (07-APR-1997) Connective Tissue, Cell and Molecular
Biology, Lund 22100, Sweden
FEATURES Location/Qualifiers
source 1..4742
/organism="Mus musculus"
/mol_type="genomic DNA"
/db_xref="taxon:10090"
/chromosome="11"
/map="between D11Mit36 and D11Mit10"
mRNA join(671..1490,3420..3583,3831..3976,4202..4742)
/product="chondroadherin"
exon 671..1490
/number=1
CDS join(720..1490,3420..3583,3831..3972)
/codon_start=1
/product="chondroadherin"
/protein_id="AAC39963.1"
/translation="MARALLFSLVFLAILLPALAACPQNCHCHGDLQHVICDKVGLQKI
PKVSETTKLLNLQRNNFPVLAANSFRTMPNLVSLHLQHCNIREVAAGAFRGLKQLIYLY
LSHNDIRVLRAGAFDDLTELTYLYLDHNKVSELPRGLLSPLVNLFILQLNNNKIRELRA
GAFQGAKDLRWLYLSENALSSLQPGSLDDVENLAKFHLDKNQLSSYPSAALSKLRVVEE
LKLSHNPLKSIPDNAFQSFGRYLETLWLDNTNLEKFSDAAFSGVTTLKHVHLDNNRLNQ
LPSSFPFDNLETLTLTNNPWKCTCQLRGLRRWLEAKASRPDATCSSPAKFKGQRIRDTD
ALRSCKSPTKRSKKAGRH"
exon 3420..3583
/number=2
exon 3831..3976
/number=3
exon 4202..4742
/number=4
ORIGIN
1 gagctcttac gggcctggtg ccactgggct ccgagaaggg gcagagccaa acgcacggct
61 gtcagctagc ctctgcaacc agctccccca cctccttggg ataaactgag gaacccagaa
121 gcgggagccc aacccacagc agctctcacg ctccgcctgc gccgcacaac agtcccatta
181 aagcgccgcc ggctggccga ccgcggtgag acgcatccgg ctgtcgggcc ccacttcctc
241 cctcccggag tccagggtga cctgtctgcc aagggtgtat gggggaagga gacgtagaga
301 actcaaactt gagcaaataa ataagttctg ggaacacttc cctctgccca gtggaaattc
361 agaagcccct cgacacacct atcaccgtcc accccacctc ggggtgttgg tccagataga
421 ggagggtagg ggaaggtgca gcataatgtt tgcaaacagg aaccaagggg ttggggttca
481 ggggaagggc cctcagccct acacacggtc tcctgctgtg aaaagaggcc cccagccatc
541 gaggatgggg acgcatctct gggcgggaag gggttaaatc agtggcttcg gtgctccacg
601 tagtagctgg ctccgctgcc aactgcggtc aaggctgccc tataaatggg ccgggagacc
661 cgagagtcga ggacttgtcg ctgccttagc ccccagccca ggctcaaggc gttctaacca
721 tggcccgcgc gctcttattc agtctggtct ttcttgccat cctcctgcct gcgctagccg
781 cctgccccca aaactgccac tgccatggag atctgcagca tgtcatctgc gacaaggtgg
841 ggctgcagaa gatccccaag gtatcagaga caaccaaact gctcaatctc cagcgcaaca
901 acttcccggt gctggctgcc aactcgtttc ggaccatgcc gaacctggtc tccctgcacc
961 tgcaacactg caacatccgc gaggtggcgg ctggtgcctt ccgaggcctg aagcagctta
1021 tctacctgta cctgtcccac aacgacatcc gggtattgcg agctggagcc ttcgacgacc
1081 tgactgaact cacttacctc tatctagacc acaacaaagt gtcggaactg ccccgggggt
1141 tgctctctcc tctggtcaac ctcttcatct tgcaactcaa caacaacaaa atccgagagc
1201 tgcgtgctgg agctttccag ggggccaagg acctgcgctg gctctacctg tcagaaaatg
1261 ccctcagttc cctgcagcct ggttccctgg atgatgtgga gaacctagcc aagttccacc
1321 tggacaagaa ccagctgtct agctacccct cagccgccct gagcaaactt cgggtggtgg
1381 aggagctgaa gctgtctcac aaccctctga agagcatccc agacaatgcc ttccagtcct
1441 tcggtagata tctggagacc ctctggctgg ataacaccaa cctggagaag gtaagtgccc
1501 cagctgcagt tctcccggct ctttctagga tgccacccca ggaaccacat cgggacagca
1561 ttccctcctc ctggactcct tgtcactcag attatcctcc aaagcaaggg gcctttgcca
1621 cttctctctg cattgacaca cacccctccc catccttctc acccttacct ggtcccgagg
1681 cttctcagac agggctctct tgggactcct tgtaagagat ggaactgttc tggtcccaca
1741 aatggcctct ggggaggcat ctgccccaga ccccacggtt aacagcagac acctcttcct
1801 gttggacttt ccacccctct cttaccagtc tcctgcaagc ctaccatttc ataaaggaag
1861 gtttgtctac tgaggcacct tccagaagct gagagaacac aaagagtgcc tgttcccagt
1921 gggtgctggc ctgtgttgct aaggtaaagt gagaggccag aggatgaatt ggggagcagg
1981 taccttaagg agaactctcc cacaccctcg tcccattccc tccgtgggtc gaaacacact
2041 caattttatt gcaacctcgg gtcgatttca aatatggacg ggaaaccaag acacggagac
2101 ctgacttggc ttcaccgagt tgctggcttg gtgctcttgc agcccgtgaa taaacacatg
2161 caatccctgg cacacgcccc cccaagtgtc tcctcagagc acagactgac tgtctcactg
2221 tccagcagac agtttgttga cttttgcttt ccccagtcac cagatcccag actcctcaat
2281 tcttcctccc ttgggatgct caggctagcc tggtcggggc tgtctaggag caaagtcctt
2341 ttcagggaat caccctggta cacaacacag tttcagccag aaggttcggg cagagaccag
2401 agcgaggtag agtagttttg tttgtagaga acgtcacagc ccaatctggt ctgtgagagg
2461 tcacagatac tgagctgagg acagaacgcc aaccttatct aggtagatgg agccttctgg
2521 gtggatcttc tttagcctgg cctcacccca gctaaatgta gaccacccta gtgacaaaac
2581 agtggccagt agaacagcat acgaaggctg atttagaatg aggaggccaa agccgggcgt
2641 ggtagcgcac gccttcaatc ccagtacctg ggaggcaaag gcaggcgaat ttctaagttc
2701 gaggccagcc tggtctacag agtgagttcc aggacagcca ggactacaca gagaaaccct
2761 gtctcacaaa aaccaaaaag aaaaaagaaa aaaaaaagaa tgaggaggcc agagagaact
2821 ggcaccaagg ctcagaggag ggcaccaata catttcctct ggagccatcc atcctggcca
2881 aagtgcccac agagagctcc acaaatagca tctagcagaa ggcagagcaa tgaggacacc
2941 actgggggaa atcctgggac cagggggctg tggggagcct gggctcactg cccatcccac
3001 caaaccctga ccaggttcac cgtgtgcccg ccccaggcac actgcccatc ccaccaaaca
3061 ctgaccaggt tcaccgtgtg cccgcccggg cactcaaagc caagctctgc ctgctcccca
3121 gacccagtgt ttgtgcaggg aggtgctgcc taggaggtgg gggacagggt gtggtcctgc
3181 agctactgtt tactagctag gtgaccctgt ccaaaggact gaaccttttc cgtttacaca
3241 ttgggaagga ccccttccct ctctctctct ctctcaaaaa aaggtgttgt ggaggatgac
3301 atcattgtgg ctcctcaaca ggccagggcg tgtgtccagg gaaaagacaa ccctggtcct
3361 ctgagaaggg agccaggaga ctgagttgag gtgctcactc tgcctccctc acctcacagt
3421 tctcagatgc tgccttctcg ggtgtgacca cactgaaaca cgtccatctg gacaacaacc
3481 gcctgaacca actgccttcc tccttcccct ttgacaacct ggagaccctc actctcacca
3541 acaacccatg gaaatgcacc tgccagctcc gtggccttcg gcggtgagaa tattcctcca
3601 tataaccccc agactgccgt ccacatgaca gacggtccta gagtaggaca gcctggacat
3661 cctagtcagc tacctagcat gtcgggtact gagtggttcc cttctctcat ttgtcaaatg
3721 aagatgacaa ctccagatat ttctatggcc atagtccatc ccggtcactg tccctttccc
3781 aagccttccc acccagcttt tccaagccca gcaactcttt gtctctgtag gtggttggaa
3841 gccaaggctt ctcgaccgga tgctacctgc tcctcgccag ccaagttcaa gggtcagcgg
3901 attcgtgaca cagatgccct tcgcagctgc aaatccccga ccaagaggtc caagaaagct
3961 ggccgccatt aaacaggtgg gggctgggta gggaggccac cacggtctac ctttggaaat
4021 tccagatggg gtgctgctat atcccatgac accacttccg gaggagcaat cagttccctg
4081 tcttacaaga aaaggaggga ggacaggata acctctccca tggcttggcc taggacgtcc
4141 atgggtccct ttaatgactc tgggtgactg gaatcctaat acccatcttc tctcactata
4201 ggtcctgatc cagccagtcc tggcgactgc cttccgctgg agagactact gacgttccct
4261 cccatcatcc acaccttctc ctacagcctc tgcggatgca cagcgctgcc ccgcccccgc
4321 ccccacctag gtacatcctg gcaggggcac tgggctctct atcaccatcc cagctccacc
4381 cagtggggtc ctaggaaaga cacagaatcc ctccccagcc actgtgtctg ggctctgcca
4441 tggctccttt gagagaagct attgtagaac ctcctaccct ctgtccatcg gagctaaagc
4501 gcagtggtca ttgggatgac cacgttatta ccaccttcct cggttccctc tgtccctgcc
4561 atttggaaac aaacatcagg cccctgaccc accctgattg ccagaaagaa tttcaggccc
4621 atgccccaac tctgccagtt cctgcctgcc aggacatgct accaggatac cagtagcgct
4681 tggctgcata tccttcctgt ttgcgctcca gatttctata aacataaatg tatgtgtgtt
4741 ca
//