所屬專題:[字符串算法](README.md)
 
## 問題
在DNA序列中,堿基'A'與'T'是互補的,'C'和'G'是互補的。DNA序列`$ s $`的反向互補序列是將`$ s $`的堿基反向排序,然后取其互補堿基而組成的序列`$ s^c $`. (例如,DNA序列'GTCA'的反向互補序列是'TGAC')
**輸入:** 一條DNA序列`$ s $`,長度最長為1000 bp.
**輸出:** `$ s $`的反向互補序列`$ s^c $`.
**樣例數據:**
```
AAAACCCGGT
```
**樣例輸出:**
```
ACCGGGTTTT
```
 
## 背景知識
該問題涉及分子生物學的基礎入門知識。詳情請查閱ROSALIND網站上[關于該問題的背景說明](http://rosalind.info/problems/revc/)。
 
## 解答
```python
def rev_comp(s):
"""輸出DNA序列s的反向互補序列"""
sc = ''
for i in reversed(s):
if i is 'A':
sc += 'T'
elif i is 'C':
sc += 'G'
elif i is 'G':
sc += 'C'
elif i is 'T':
sc += 'A'
return sc
## --main--
with open("rosalind_revc.txt", 'r') as f1:
s = f1.read().strip()
with open("rosalind_revc_out.txt", 'w') as f2:
f2.write(rev_comp(s))
```