The Secondary and Tertiary Structures of DNAclick to expand

In DNA strings, symbols ‘A’ and ‘T’ are complements of each other, as are ‘C’ and ‘G’.

The reverse complement of a DNA string s is the string sc formed by reversing the symbols of s, then taking the complement of each symbol (e.g., the reverse complement of “GTCA” is “TGAC”).

Given: A DNA string s of length at most 1000 bp.

Return: The reverse complement sc of s.

Thinking prcess

# reverse DNA 
sample_Dataset = 'AAAACCCGGT'
sample_Dataset[::-1]
'TGGCCCAAAA'
# initial thinking of convert 
#    DNA_string.replace('A', 'T')
 #   DNA_string.replace('T', 'A')
  #  DNA_string.replace('T', 'A')
   # DNA_string.replace('T', 'A')
# Can using traslate to convert 
trans_table = str.maketrans('abc', '123')
print(trans_table) # {97: 49, 98: 50, 99: 51}

result = 'abcabc'.translate(trans_table)
print(result)  # 123123

result_2 = 'acabc'.translate(trans_table)
print(result_2)

sample_Dataset = 'AAAACCCGGT'
DNA_trans_table = str.maketrans('ACGT', 'TGCA')

DNA_trans = sample_Dataset.translate(DNA_trans_table)
print(DNA_trans)
{97: 49, 98: 50, 99: 51}
123123
13123
TTTTGGGCCA
# Final 
sample_Dataset = 'AAAACCCGGT'

def DNA_reverse_completion(DNA_string):
    reverse_dna = DNA_string[::-1]
    DNA_trans_table = str.maketrans('ACGT', 'TGCA')
    DNA_trans = reverse_dna.translate(DNA_trans_table)
    return DNA_trans


DNA_reverse_completion(sample_Dataset)
'ACCGGGTTTT'
# Final Result Test (Pass)
sample_Dataset = 'ATAGTGGAGAATTTCAGTCTTCGGACTGGCGGCCACATTAGAAAGTAAGGTACTTGATAGAGGGCGCGCCCGAAGGCGAAAGCGATGGATGCGTCACGTACGTAGGGACATTTGTACCATATATGCTCCCAGAGGTGACCGAAATAATGCTGCAAAGTGATTGAAGGGAAGCCCCTTGGTCCACATTGATTGGAACCCTTTGGCGCATGAATCCTCATCTATTTTCAAATGTACTGAAATCGAAAATAGCTGGGAGTTATTCGTAGCATTTTAATTCCGCGCGATGCTTCTATATAAACGTGATGGCTACCCAATCGAGATACATCATTTAGCGAGTTTGTCGCCTCCCGGGGAGCCCGTCGGGTTTTAACTGGAGCAACACGACAGATGGAGCATAACTTCCTAAATAGCAAACCCATGTCACATACACATACTCTGGACCTCCTGGGAATCCAAAGAACGGGCTTTGAGTCAAGGCAGAATACTTACATCAGTGGCAGCTTCACGGTCTGCGCGAAGTTATCGGAGGTGCGATGCCGCGCGTTTACACTTATACCAATGCGCGTCACGCATATGGGGCTGCTGCGAGAACAAACACAATTTAAACATCGTGACGTCGAACCCGTTATAACCGGTGTCCGGGTCGAACGAGTGGTACAGAGCTCCTTTACTCGTTACCAGTCCGTGGAAGATTTCTGCTATGTTTCCCTCCTCGAAAATAACCTGGTCAGGAGAGGGTGTAATCTGTAACGTGCCGTGGACAACACTAATGCGCCCTTCCGCCCTTGTTTTATAACGGAAGTGGTATGAGGGGGGCCCCTTACTAGATCGTACTACTGGTAT'

def DNA_reverse_completion(DNA_string):
    reverse_dna = DNA_string[::-1]
    DNA_trans_table = str.maketrans('ACGT', 'TGCA')
    DNA_trans = reverse_dna.translate(DNA_trans_table)
    return DNA_trans


DNA_reverse_completion(sample_Dataset)
'ATACCAGTAGTACGATCTAGTAAGGGGCCCCCCTCATACCACTTCCGTTATAAAACAAGGGCGGAAGGGCGCATTAGTGTTGTCCACGGCACGTTACAGATTACACCCTCTCCTGACCAGGTTATTTTCGAGGAGGGAAACATAGCAGAAATCTTCCACGGACTGGTAACGAGTAAAGGAGCTCTGTACCACTCGTTCGACCCGGACACCGGTTATAACGGGTTCGACGTCACGATGTTTAAATTGTGTTTGTTCTCGCAGCAGCCCCATATGCGTGACGCGCATTGGTATAAGTGTAAACGCGCGGCATCGCACCTCCGATAACTTCGCGCAGACCGTGAAGCTGCCACTGATGTAAGTATTCTGCCTTGACTCAAAGCCCGTTCTTTGGATTCCCAGGAGGTCCAGAGTATGTGTATGTGACATGGGTTTGCTATTTAGGAAGTTATGCTCCATCTGTCGTGTTGCTCCAGTTAAAACCCGACGGGCTCCCCGGGAGGCGACAAACTCGCTAAATGATGTATCTCGATTGGGTAGCCATCACGTTTATATAGAAGCATCGCGCGGAATTAAAATGCTACGAATAACTCCCAGCTATTTTCGATTTCAGTACATTTGAAAATAGATGAGGATTCATGCGCCAAAGGGTTCCAATCAATGTGGACCAAGGGGCTTCCCTTCAATCACTTTGCAGCATTATTTCGGTCACCTCTGGGAGCATATATGGTACAAATGTCCCTACGTACGTGACGCATCCATCGCTTTCGCCTTCGGGCGCGCCCTCTATCAAGTACCTTACTTTCTAATGTGGCCGCCAGTCCGAAGACTGAAATTCTCCACTAT'