728x90
Goal
1. μ κ·ννμμ΄λ?
2. νμ΄μ¬μμ μ κ·ννμ μ°λ λ°©λ² μμ보기
μ κ·ννμμ΄λ?
μ κ·ννμ (Regular expression)μ ν μ€νΈμμ ν¨ν΄ μ°ΎκΈ°λ₯Ό ν λ μ μ©ν λꡬμ΄λ€. μλ₯Ό λ€μ΄ μ¬λ¬ RNA μμ΄ μ€ "AUG"κ° ν¬ν¨ λ μμ΄λ§ μΆλ ₯νκ³ μΆλ€λ©΄ μ κ·ννμμ μ¨μ μμ£Ό κ°λ¨νκ² μ°Ύμ μ μλ€.
νμ΄μ¬μ μ κ·ννμ
νμ΄μ¬μμλ re λΌλ λΌμ΄λΈλ¬λ¦¬λ₯Ό μ΄μ©νλ€.
re λͺ¨λμ λ©μλ | κΈ°λ₯ | μμ |
findall("ν¨ν΄", λ¬Έμμ΄) | ν¨ν΄μ΄ μΌμΉνλ λͺ¨λ κ±Έ 리μ€νΈ ννλ‘ λ°ν |
import re
rna = "AUGCCAUGCUGA"
first_start = re.search("AUG", rna)
print(first_start) # <re.Match object; span=(0, 3), match='AUG'>
|
search("ν¨ν΄", λ¬Έμμ΄) | ν¨ν΄μ΄ μΌμΉνλ λΆλΆμ object ννλ‘ λ°ν |
import re
rna = "AUGCCAUGCUGA"
start_codons = re.findall("AUG", rna)
print(start_codons) # ['AUG', 'AUG']
|
split("ν¨ν΄", λ¬Έμμ΄, λͺλ²κΉ) | ν¨ν΄μ΄ μΌμΉνλ λΆλΆμ κΈ°μ€μΌλ‘ ν μ€νΈλ₯Ό λλμ΄ λ¦¬μ€νΈλ‘ λ°ν |
mport re
rna = "AUGCCAUGCUGA"
gc_split = re.split("GC", rna)
print(gc_split) # ['AU', 'CAU', 'UGA']
one_gc_split = re.split("GC", rna, 1)
print(one_gc_split) # ['AU', 'CAUGCUGA']
|
sub("λ°κΎΈκ³ μΆμν¨ν΄", "λ°κΎΌν", λ¬Έμμ΄) | ν¨ν΄μ΄ μΌμΉνλ λΆλΆμ λ€λ₯Έ ν μ€νΈλ‘ λ°κΏμ λ° |
import re
rna = "AUGCCAUGCUGA"
dna = re.sub("U", "T", rna)
print(dna) # ATGCCATGCTGA
|
ν¨ν΄μΌλ‘ μΈ μ μλ κ²λ λ§€μ° λ€μνλ€. λͺκ°μ§ λ§μ΄ μ¬μ©νλ κ²λ§ μ 리νμλ©΄...
ν¨ν΄ | λ» | μμ |
μμ |
. | \n λΉΌκ³ λͺ¨λ λ€ λ¨ | b.d | 'bad', 'bed', 'bid', 'bud' λ±λ±μ΄ λ€ λ§€μΉλ¨ |
^ | [μμΉ] μμνλ λ¬Έμ | ^AUG | 'AUG'λ‘ μμνλ λ¬Έμμ΄ λ§€μΉλ¨ |
$ | [μμΉ] λλλ λ¬Έμ | UGA$ | 'UGAλ‘ λλλ λ¬Έμμ΄ λ§€μΉλ¨ |
* | [κ°μ] 0 μ΄μμ κ°μλ§νΌ | TA* | 'T', 'TA', 'TAA', 'TAAAA' λ±λ±μ΄ λ€ λ§€μΉλ¨ |
+ | [κ°μ] 1 μ΄μμ κ°μλ§νΌ | TA+ | 'TA', 'TAA', 'TAAAAAA' λ±λ±μ΄ λ€ λ§€μΉλ¨ |
? | [κ°μ] 1κ° μκ±°λ μκ±°λ | TA? | 'T' λλ 'TA' λ§ λ§€μΉλ¨ |
\ | ν¨ν΄μΌλ‘ μ¬μ©νλκ±Έ λ§€μΉνκ² μ¬μ©νκ³ μΆμ λ μλ₯Ό λ€μ΄, "?"κ° λ€μ΄κ° μλμ§ λ³΄κ³ μΆμλ° "?"λ μμμ μ€λͺ νμλ―μ΄ κ°μλ₯Ό λ»νλ ν¨ν΄μ΄λ€. κ·Έλ΄ λ "\?"λ₯Ό μ°λ©΄ λ¬Όμνλ₯Ό μ°Ύμ μ μλ€. |
/? | '?' κ° λ§€μΉλ¨ |
[ ] | - λ€λͺ¨ κ΄νΈ μμ μλ κ² μ€ μ무거λ λ§€μΉλλ©΄ λ λ - νΉμ λ²μλ₯Ό λνλΌ λ |
[abc] | 'a', 'b', λλ 'c'λ₯Ό λ§€μΉ μν΄ |
[a-z] | μνλ²³ λ§€μΉ μν¬ λ | ||
[0-9] | μ«μ λ§€μΉ μν¬ λ | ||
| | λλ | (UGA|UAG|UAA) | 'UGA', 'UAG', 'UAA' μ
μ€ νλλ₯Ό λ§€μΉ μν¬ λ (μμ κ΄νΈλ κ·Έλ£Ήλ κ²λ€λ§ λ§€μΉμν΄) |
\n | κ°νλ¬Έμ. μν° μ³μ μ€ λμ΄κ°λκ±Έ λνλ | \n | 'abc def ghi' μ΄λ κ² μ€μ΄ λμ΄κ° λΆλΆλ€μ λ§€μΉ μν΄ |
μμ ν¨ν΄λ€ μ΄μΈμλ μμ² λ§κΈ° λλ¬Έμ μ μμ§ν΄λλ©΄ μ κ·ννμμ λ μ νμ©ν μ μκ² λ€! π
μ°Έκ³
https://docs.python.org/3/library/re.html
'𧬠Biology > λ°μ΄μ€ μ½λ© λ¬Έμ ' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[ROSALIND] DNAκ° κ³΅μ νλ motif μ°ΎκΈ° (0) | 2023.05.25 |
---|---|
[ROSALIND] λ¨λ°±μ§ motif μ°ΎκΈ° (0) | 2023.05.23 |
URLλ‘ FASTA μμ΄ κ°μ Έμ€κΈ° (0) | 2023.05.22 |
[ROSALIND] λ¨λ°±μ§ μμ΄λ‘ λ²μνκΈ° (2) | 2023.05.14 |
[ROSALIND] DNA λ³μ΄ κ°μ μΈκΈ° (0) | 2023.05.09 |
λκΈ